Newsgroup: it.lavoro.informatica
Titolo: java vs c++ - bigdecimal





piu che java vs c++ il post sarebbe da intitolare java vs gmp.

Questo perche c++ non ha nella lib std un bigdecimal.

Boost offre questa apportunita,ma ho preferito scegliere le libgmp in 

quanto conosciute,veloci,open source,disponibili in qualunque distro 

linux ed ovviamente offrono una interfaccia c++.

Per il benchmark ho scelto l'algoritmo Bailey-Borwein-Plouffe per il 

calcolo delle Nesime cifre di pigreco.

Non e' il piu veloce metodo conosciuto ma per gli scopi prefissi va piu 

che bene.

Per chi e' interessato l' algoritmo espresso in modo matematico lo puo 

trovare qui:

https://it.wikipedia.org/wiki/Calcolo_di_pi_greco#Formula_BBP_.28base_16.29


Per visualizzare le cifre basta lanciare i corrispettivi programma con 

il secondo argomento diverso da 0

Per java:

	java pi 1000 1

per c++

	./a.out 1000 1

La visualizzazione come formato  e' uguale a:

https://it.wikipedia.org/wiki/Pi_greco_(prime_100.000_cifre)


per chi volesse fare un confronto







pi.java:

import java.math.*;





public class pi {



	private static void print(String s,int n) {

		if (s.length() < n)

			n=s.length();

		if (n < 3)  {

  			System.out.println(s);

			return;

		}

		System.out.println(s.substring(0,2));

		int j=1;

		for (int i=2;i < n;++i) {

			System.out.print(s.charAt(i));

			if (j % 10 == 0)

				System.out.print(" ");

			if (j % 170 == 0)

				System.out.println();

			++j;			

		}

		System.out.println();

	}



	public static void main(String args[]){

		final int n=Integer.parseInt(args[0]);

		final boolean isprint=Integer.parseInt(args[1]) != 0;

		final BigDecimal n16=new BigDecimal(1).divide(new BigDecimal(16), 

MathContext.UNLIMITED);

  		final BigDecimal n1=new BigDecimal(1);

		final BigDecimal n2=new BigDecimal(2);

		final BigDecimal n4=new BigDecimal(4);

		BigDecimal s=new BigDecimal(0);

		BigDecimal powi=new BigDecimal(1);

		int n8=0;

		for (int i=0;i < n;++i) {

			if (i != 0) {

				powi=powi.multiply(n16);

				n8 += 8;

			}

			final BigDecimal a = n4.divide(new BigDecimal(n8 + 

1),n,RoundingMode.HALF_UP);

			final BigDecimal b = n2.divide(new BigDecimal(n8 + 

4),n,RoundingMode.HALF_UP);

			final BigDecimal c = n1.divide(new BigDecimal(n8 + 

5),n,RoundingMode.HALF_UP);

			final BigDecimal d = n1.divide(new BigDecimal(n8 + 

6),n,RoundingMode.HALF_UP);

			s=s.add(a.subtract(b).subtract(c).subtract(d).multiply(powi));

		}

		if (isprint)

			print(s.toPlainString(),n);

	}

};



pi.cpp:

#include <iostream>

#include <sstream>

#include <climits>

#include "gmpxx.h"



template <typename T>

inline T convert(const char* s) {

	T n;

	std::istringstream os(s);

	os >> n;

	return n;

}



using d_t=mpf_class;



static void print(const d_t& d,std::size_t n) {

	std::ostringstream ostr;

	ostr.precision(n);

	ostr << d;

	if (ostr.str().size() < 2) {

		std::cout << ostr.str() << std::endl;

		return;

	}

	auto s=ostr.str();

	std::cout << s.substr(0,2) << std::endl;

	long j=1;

	for (std::size_t i=2;i < n;++i) {

		std::cout << 
s.at
(i);

		if (!(j % 10))

			std::cout << " ";

		if (!(j % 170))

			std::cout << std::endl;

		++j;

	}

	std::cout << std::endl;

}



int main(int argc, char** argv) {

	++argv;

	const auto n = convert<unsigned int>(*argv++);

	const auto isprint=convert<int>(*argv) ? true : false;

	const auto bit_precision=n * CHAR_BIT;

	d_t s={0,bit_precision};

	const d_t n1(1,bit_precision);

	const d_t n2(2,bit_precision);

	const d_t n4(4,bit_precision);

	const d_t n16=d_t(1,bit_precision) / d_t(16);

	d_t powi(1);

	for (unsigned int i=0;i < n; ++i) {

		const auto n8=8U * i;

		if (i)

			powi *= n16;

		const d_t p=(

			n4 / d_t(n8 + 1)

			-

			n2 / d_t(n8 + 4)

			-

			n1 / d_t(n8 + 5)

			-

			n1 / d_t(n8 + 6)

		) * powi;

		s += p;

	}

	if (isprint)

		print(s,n);

}





pi.sh:

#!/bin/bash

JAVA_HOME=/opt/jdk1.8.0_192

export PATH="$JAVA_HOME/bin:$PATH"

export LD_LIBRARY_PATH="$JAVA_HOME/lib:$LD_LIBRARY_PATH"

rm -f a.out *.class *.o

javac -version

javac  -O pi.java

g++-8 --version

g++-8 -std=c++17 -Wall -O2 pi.cpp  -lgmp -lgmpxx

for n in  10 100 1000 10000

do

	time java pi  $n 0

	time ./a.out $n 0

done



bash -x ./pi.sh:

+ JAVA_HOME=/opt/jdk1.8.0_192

+ export PATH=/opt/jdk1.8.0_192/bin:...

+ PATH=/opt/jdk1.8.0_192/bin:...

+ export LD_LIBRARY_PATH=/opt/jdk1.8.0_192/lib:

+ LD_LIBRARY_PATH=/opt/jdk1.8.0_192/lib:

+ rm -f a.out pi.class '*.o'

+ javac -version

javac 1.8.0_192

+ javac -O pi.java

+ g++-8 --version

g++-8 (Ubuntu 8.2.0-1ubuntu2~18.04) 8.2.0

Copyright (C) 2018 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.



+ g++-8 -std=c++17 -Wall -O2 pi.cpp -lgmp -lgmpxx

+ for n in 10 100 1000 10000

+ java pi 10 0



real	0m0,050s

user	0m0,042s

sys	0m0,008s

+ ./a.out 10 0



real	0m0,001s

user	0m0,001s

sys	0m0,000s

+ for n in 10 100 1000 10000

+ java pi 100 0



real	0m0,052s

user	0m0,057s

sys	0m0,000s

+ ./a.out 100 0



real	0m0,001s

user	0m0,001s

sys	0m0,000s

+ for n in 10 100 1000 10000

+ java pi 1000 0



real	0m0,157s

user	0m0,301s

sys	0m0,021s

+ ./a.out 1000 0



real	0m0,005s

user	0m0,005s

sys	0m0,000s

+ for n in 10 100 1000 10000

+ java pi 10000 0



real	0m9,588s

user	0m12,042s

sys	0m0,120s

+ ./a.out 10000 0



real	0m0,295s

user	0m0,291s

sys	0m0,004s












 per chi volesse fare un confronto



Interessante, ma mi chiedo: non bastava copiarsi il numero di cifre da 

https://it.wikipedia.or/wiki/Pi_greco_(prime_100.000_cifre)
 ? O di cifre 

ne servivano anche di piu'?

Non capisco il senso.


 piu che java vs c++ il post sarebbe da intitolare java vs gmp.



Non mi capacitero' mai di queste interrogativi.

Fermo restando che c++ lo ho /visto/ da molto lontano

ormai nel tempo e nello spazio e che gmp non so cosa diavolo sia.

Ma.....

il problema, spesso, non sta nel /tool/ che usi ma nel modo

in cui lo usi.

In quanto a /bigdecimal/ mi ci scontro quotidianamente.

Capire a quale primoriale (non lo spiego, credo sia su wikipedia)

appartenesse il 45° primo di Mersenne mi ha richiesto tempo perche'

non mi interessava /automatizzare/ il processo ma ho usato

un /tool/ adatto che era in grado di trattare i /bigdecimal/ e,

soprattutto, che fosse in grado di confrontare, spostare, fare cicli.

I linguaggi /generalpourpose/ servono a facilitare i processi

/generalpourpose/ non mi sognerei mai (bugia! una routinetta la

ho scritta in VBA) per trattare valori che vanno oltre le 64

cifre.

Discutere di Java e bigdecimal e' come discutere con un  contadino

la costante di Hubble.

Al contadino interessa come e quando tagliare il fieno o seminare

o, al massimo, le previsioni meteo delle 24 ore successive.

I due linguaggi che citi sono sostanzialmente la stessa cosa

tutti e due guardano il dito, la Luna e' altra cosa.



-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Non capisco il senso.



Il senso e' il benchmark,non trovare le Nesime cifre di pigreco

Se il senso fosse stato calcolare le Nesime cifre di pigreco avrei 

scelto l'algoritmo piu veloce conosciuto.

L'algoritmo chudnovsky e molto piu veloce di quello presentato ed esiste 

una implementazione per gmp

Basta cercare in un motore di ricerca  gmp-chudnovsky.c e ti trovi un 

bel programma c che viene usato per calcolare miliardi di cifre di 

pigreco (ovviamente non usando un comune pc).

Il programma e' stato scritto da Hanhong Xue e modificato da  Torbjorn 

Granlund



Ecco l'url:

https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=2ahUKEwiKocX7yovgAhVtja0KHaMZAOoQFjAAegQIARAB&url=https%3A%2F%2Fgmplib.org%2Fdownload%2Fmisc%2Fgmp-chudnovsky.c&usg=AOvVaw2x2euhrI5IaBiih9dONfAI







Il 26/01/19 16:11, Alessandro Cara ha scritto:


Avevo letto da qualche parte che bigdecimal di java usava le gmp

Proprio passato, poiche avevo anche letto che ora oracle aveva cambiato 

politica sui bigdecimal

Non ti so dire,cosi su due piedi,da che versione di java





Da quello che osservo mi sembra di capire che tutti usano tutto.

Forse anche c++ e' in grado di usare qualche /sarchiapone/ esterno

magari anche gmp.

Se fosse cosi' mi dici quale sarebbe la differenza fra c++ e Java?



Io, tra l'altro, quando penso a Java ancora penso a Sun.



Il 26/01/19 16:57, Alessandro Cara ha scritto:


Tutti e due derivano dal c,ma java ha pulito la sintassi c ed aggiunto 

la programmazione ad oggetti e poi la generica

Il compilatore non genera codice nativo ma una sorte di codice 

intermedio (chi non ricorda il pascal pcode ?)

La jvm (incarnata nell'eseguibile  chiamato java) ,e' il programma di 

running ed anche l'ottimizzatore  di codice prima del running.

c++ e figlio diretto di  c, ma al contrario del java mantiene una 

compatibilita con il codice c e' quasi al 100%

E puo chiamare direttamente entry points c mentre java ha bisogno di uno 

strato sw implementato attraverso jni.

Come java,ha in piu di c la programmazione ad oggetti e la 

programmazione generica

Quest'ultima ben piu flessibile di java.

IL compilatore,a parte qualche eccezione, genera codice nativo 

ottimizzato e solo per la piattaforma in uso

Viene poi usato il classico programma di linker per generare l'eseguibile.

Notare la differenza,l'ottimizzazione in c/c++ e' lasciata al 

compilatore e qualcosa al linker mentre in java e per lo piu a carico 

alla jvm.

Mentre un programma java lo fai girare ovunque esista una jvm,per c++ (e 

c) occorre ricompilare e rilinkare.






 Discutere di Java e bigdecimal e' come discutere con un  contadino



Infatti solo due lavoratori della terra potevano iniziare una discussione del genere senza manco aprire il disassembly e vedere che combina il compilatore


 Non capisco il senso.



il senso è che ha fatto l'esercizietto e viene qui a mostrarsi come se 

fosse odifreddi. quando ha semplicemente preso un algoritmo matematico e 

l'ha tradotto in java mettendoci di suo solo le consuete cialtronate.


 intermedio (chi non ricorda il pascal pcode ?)



Smettila di scrivere minchiate, idiota incompetente: 
https://en.wikipedia.org/wiki/Just-in-time_compilation



Il 27/01/19 04:42, 4ndre4 ha scritto:


In computing, just-in-time (JIT) compilation (also dynamic translation 

or run-time compilations)[1] is a way of executing computer code that 

involves compilation during execution of a program – at run time





Ora,ti risulta che abbia scritto di runtime o di compilatore ?




 



Io non mi mostro un bel niente

Non soffro di megalomania


 Ora,ti risulta che abbia scritto di runtime o di compilatore ?



Sai almeno leggere l'inglese, imbecille?


 con me



Ma ancora con queste stupidaggini? Ancora? La smetti di renderti ridicolo, o no? 

Cretino, ti e` stato gia` detto molte volte: se vuoi confrontare qualcosa, fallo bene. Tu sei uno specialista di strawman arguments. Costruisci un argomento fantoccio e lo attacchi. Non puoi confrontare BigDecimal con gmp, idiota colossale che non sei altro. Cosa speri mai di dimostrare?

Prendi un wrapper gmp per Java, prendine uno per C++ e confronta semmai: 
https://mathybit.github.io/java-gmp/


Ma tu, la puzza della montagna di merda che ti attiri addosso da solo, ogni volta che scrivi queste bestialita`, non la senti proprio?


 Il senso e' il benchmark,non trovare le Nesime cifre di pigreco

  Capisco, conseguentemente, dati i presupposti, il benchmark non ha senso.





Se mi dai del lavoratore della terra sono orgoglioso.

Rivoltare la zolla (cioe' aprire il disassembly) mi e' capitato di farlo.

Come lavoratore della terra amo chi ha studiato e mi /insegna/ qualcosa

di nuovo ma in quanto a rivoltare zolle sono un capo!



Il 27/01/19 08:56, 4ndre4 ha scritto:


Ma come,se esiste BigDecimal e gmp e' molto meglio perche' non 

implementare BigDecimal usando gmp ?

Nel fantastico mondo di java,dove oracle offre una libreria immensa,poi 

si scopre che qualcosa fa schifo come prestazione.

Ragazzo mio,scrivi ad oracle,prenditela con lei,non con me.

Io sono come una detective,porto alla luce dei fatti.

Non sono io che ho commesso l'omicidio.






Il 27/01/19 08:48, 4ndre4 ha scritto:


Mi sai che tu non lo sai leggere l'inglese:



is a way of executing computer code that involves compilation during 

execution of a program – at run time





Per il poveraccio che sei te lo devo tradurre?






 





Opinioni tue

Quando qualcosa di java fa schifo come prestazioni chissa perche viene 

fuori che la comparazione non ha mai senso




Il 27/01/2019 09:23, Giuspi ha scritto:

P.S.

Avevo fatto una scommessa con me stesso.

Et voila' nominare Hubble e' stato come rivoltare una zolla di terra!



 la programmazione ad oggetti e poi la generica



Grazie per il /pistolotto/ ma java mi e' capitato di usarlo



 execution of a program – at run time



Deficiente, hai scritto "Il compilatore non genera codice nativo ma una sorte di codice 

intermedio (chi non ricorda il pascal pcode ?)"



Quel "compilation during execution of a program" ti dice niente? Quando la smetterai di sparare sciocchezze su Java senza conoscere il linguaggio?




 Nel fantastico mondo di java



Di "fantastico mondo di Java" parli tu, non gli altri, demente. A fare schifo e` la tua immensa incompetenza e l'idea che si possano fare "benchmark" del genere. Scrivi tu ad Oracle, visto che sei cosi` ossessionato dalla libreria Java e dalle performance. Pero` pubblicaci anche le risate con cui ti risponderanno, eh?

A me, il BigDecimal va benissimo per gli usi che ne faccio. 



Veramente dovresti smetterla di renderti cosi` ridicolo.


 fuori che la comparazione non ha mai senso



Ma quale fare schifo. Chi lo avrebbe dimostrato, tu?

Quando ti viene fatto notare che quel qualcosa che tu ritieni faccia schifo in Java e` stato confrontato da altri con risultati ben diversi, chissa` perche` ignori la questione. Dobbiamo risuscitare la questione del parallelismo? Ti sono stati postati benchmark sul parallelismo SERI, non i tuoi esperimentini idioti, che dimostrano che Java ha prestazioni comparabili, se non migliori, a quelle del C. Li hai bellamente ignorati o rigettati con "chissa` dove vai a prendere questi datI". Patetico buffone, viscido paraculo incompetente.




 Ma quale freno tirato 



lascia perdere, la metafora è per lui. te un c'arrivi neanche con la 

scala.








 implementare BigDecimal usando gmp ?



ohibò, del fatto che gmp non è nella libreria standard c++ non hai niente 

da dire?



sshhh, ti svelo un segreto... sei pronto?

il wrapper è nel repository maven:



https://mvnrepository.com/artifact/com.squareup.jnagmp/jnagmp/2.1.0




la libgmp su linux è su tutti i repository di tutte le distro.



quindi come hai usato la libreria esterna in c++ avresti potuto usare la 

stessa libreria in java, medesimo sforzo forse anche meno.



naturalmente ora dirai che non era quello che volevi fare, eccetera, 

eccetera. insomma la solita storia del collaudatore e il freno a mano, 

hai presente?



sei proprio il peggio... <grin>


Il 27/01/19 10:52, 4ndre4 ha scritto:


compilazione durante l'esecuzione

Non e' il compilatore java che lo fa


 

Si sa benissimo il perche'.


 Non e' il compilatore java che lo fa



Viscido paraculo che non sei altro.




 via sql vai a decodificare il db?



E` un viscido paraculo :) Come tutti i paraculi, quando gli fai una domanda alla quale sa bene di non poter/saper rispondere, tira fuori un "dipende". 



Il bello e` che sputa merda su Java, usando C++ che un tipo a precisione multipla manco ce l'ha.



Eh, cosa vuoi, lui vive all'estero. Non ha dimestichezza con le metafore.


 





Tu non mi ha detto dove stavano i dati



Il 27/01/19 15:33, rootkit ha scritto:


Mi dici che senso ha confrontare una libgmp java che usa jni ?

Il test e' per java, non per c

Semmai avrebbe piu senso confrontare bigdecimal di openjdk dove sono 

sicuro che bigdecimal e' scritto in java (si possono trovare su internet 

i source).

E' facile dire che java e' veloce quando si appoggia a c



Ed ecco il test con openjdk



bash -x ./pi.sh

+ rm -f a.out pi.class '*.o'

+ javac -version

javac 10.0.2

+ javac -O pi.java

+ g++-8 --version

g++-8 (Ubuntu 8.2.0-1ubuntu2~18.04) 8.2.0

Copyright (C) 2018 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.



+ g++-8 -std=c++17 -Wall -O2 pi.cpp -lgmp -lgmpxx

+ for n in 10 100 1000 10000

+ java pi 10 0



real	0m0,079s

user	0m0,088s

sys	0m0,005s

+ ./a.out 10 0



real	0m0,001s

user	0m0,001s

sys	0m0,000s

+ for n in 10 100 1000 10000

+ java pi 100 0



real	0m0,081s

user	0m0,090s

sys	0m0,009s

+ ./a.out 100 0



real	0m0,001s

user	0m0,000s

sys	0m0,001s

+ for n in 10 100 1000 10000

+ java pi 1000 0



real	0m0,186s

user	0m0,382s

sys	0m0,013s

+ ./a.out 1000 0



real	0m0,004s

user	0m0,004s

sys	0m0,000s

+ for n in 10 100 1000 10000

+ java pi 10000 0



real	0m9,451s

user	0m12,708s

sys	0m0,124s

+ ./a.out 10000 0



real	0m0,293s

user	0m0,293s

sys	0m0,000s



Quindi posso supporre,visti i tempi,che anche bigdecimal di oracle sia 

scritto in java.


Il 28/01/19 02:09, 4ndre4 ha scritto:


Non sei neanche capace di ammettere le tue cappelle

Sei solo un toro che quando vede rosso va all'attacco




 Non sei neanche capace di ammettere le tue cappelle



Ah scemo, quali cappelle? Il bue che da` del cornuto all'asino. Vatti a rileggere il post che hai scritto: e` pieno di cappelle. Ti do del paraculo perche` e` quel che sei. Vieni messo all'angolo e non sai uscirtene se non svicolando, eh? :) Vile paraculo che non sei altro.


 Tu non mi ha detto dove stavano i dati



Rispondi alla domanda che ti e` stata fatta. Quale tipo usi in C++?




 E' facile dire che java e' veloce quando si appoggia a c



Così come è facile dire che C++ è veloce quando si appoggia a C. 

Ha ragione rootkit a dire che ci si mette meno a chiamare GMP in Java, è pieno di esempi su internet proprio sul tuo stesso algoritmo.



Se vuoi trollare su Java fallo bene, non farlo su un argomento dove Java almeno ci prova ad implementare i decimali, mentre il brontosauro C++ alza le mani ancora prima di partire.


Il 28/01/19 14:16, 4ndre4 ha scritto:


A parte il fatto che saranno affari miei visto che la lib std del c++ 

non ha una serie di classi per gestire i db.

Comunque,proprio perche sono magnanimo, rispondero.

Io uso delle classi nel namespace data fatte da me.

Per leggere un valore da un recordset non e' come jdbc che si specifica 

il tipo in cui si vuole mettere il valore ma il valore letto va a finire 

in un oggetto di tipo variant

E' una classe che puo contenere tutti i tipi base, i tipi di un db ed 

altri definiti dall'utente.

Poi si estrae una stringa dal variant (indipendentemente dal tipo 

contenuto) oppure lo si converte nel tipo voluto

Se la conversione non e' possibile viene generata una eccezione.

Il tipo voluto puo essere una classe per gestire i bigdecimal (da me si 

chiama number) anche se il tipo contenuto nel variant e' un semplice int.

Basta che sia compatibile con un number.

Ovviamente non mi rompere i marroni piu di tanto,visto che so che 

inizierai a criticare anche questo.










 



Trolla tu va,c++ non alza le mani proprio un bel niente.

E brontosauri saranno magari COBOL,PLI,FORTRAN e similia

Non un linguaggio che ad oggi e' molto usato ed e' moderno come 

progettazione sw.






Il 28/01/19 14:14, 4ndre4 ha scritto:


Sei pure capace a rigirare le frittate

Io ho scritto di compilatore che genera un codice intermedio

Ora rispondi:

e' vero o no che il compilatore java genera un codice intermedio e non 

assembly ?

E' vero il JIT ha solo a che fare con una sorta di compilazione eseguita 

a runtime e che nulla ha a che fare con il compilatore discusso sopra ?



Non voglio sentire menate,rispondi solo si o no

Un consiglio,non cercare di fare la figura di quello che si sputtana 

davanti agli altri solo per darmi torto.

Anche se qui con tutti i viziati che ci sono in questo ng sarebbero 

capaci di darti ragione anche se scrivi megacappelle pur di dare torto a me.




 E' facile dire che java e' veloce quando si appoggia a c



francamente è un aspetto di cui frega un cazzo, come a qualsiasi altro 

normodotato. giusto un demente potrebbe pensare che siccome si usano 

librerie esterne native scritte in altri liguaggi allora fermi tutti, 

squisio, così non vale. 

ti ricordo che fare a chi se lo tira di più è un *tuo* chiodo fisso. 


 non ha una serie di classi per gestire i db.



Cosa c'entrano i db? Ma e` mai possibile che tu non capisca mai un cazzo? Ti e` stato detto che tipo a precisione multipla usi in C++ per memorizzare un valore numeric. 

Fai veramente cadere le braccia.


 Non e' cosi  per java,python,perl.ecc..



Si`, certo, continua ad arrampicarti sugli specchi.


 davanti agli altri solo per darmi torto.



Io mi sputtanerei? Guarda, detto da te, con la storia che ti sei costruito in questo ng, e con la reputazione da demente che ti porti dietro, ci vuole un bel coraggio. 


 Tu non mi ha detto dove stavano i dati



Certo che te l'ho detto: in una colonna numerica di una tabella di un 

data-base relazionale in cui il limite di precisione di un campo di tipo 

numeric sia di almeno 515 cifre.

Serve sapere altro?

In Java non serve, basta il nome della tabella ed il nome del campo, se 

poi usi un ORM, neanche quello.

Tu preoccupati di rispondere alla domanda: in c++, che tipo usi?




 inizierai a criticare anche questo.



Tu pensi davvero che la tua metodologia non sia passibile di critiche?


 E' facile dire che java e' veloce quando si appoggia a c



Di fatto e' una delle principali caratteristiche del Java.

E togliti dalla testa che il jni sia 'un ulteriore strato', nel senso 

che non e' 'ulteriore', e' lo stesso strato su cui si basano i programmi 

nativi.




 Dai, avanti, sparane ancora di puttanate, Sam!



cit. hunphrey bogart: 'suonala ancora, sam'

cit. woody allen: 'provaci ancora, sam'

:-D


 



Se tutti sostengono che scrivi cazzate, secondo te lo fanno per il

piacere di darti torto oppure, magari, lo fanno proprio

perchè tu *veramente* scrivi cazzate?




 





Non metterti a fare i giochetti sporchi con me che sono ben piu esperto 

di te di c e c++

Io non ho mai affermato che c++ e' compatibile al 100% con c e conosco 

bene le differenze tra i due linguaggi.

Ma il tuo giochetto e' facile da capire,vuoi dimostrare che poiche c++ 

non e' c allora si appoggia su librerie a lui estranee e quindi poiche 

lo fa lui allora lo puo fare anche java.

Sbagliato.

Prendi il tarball source di libgmp e basta adattare nei punti di 

richiesti le (poche) incompatibilita e viene generata una libgmp con 

prestazioni  pressoche uguali alla libgmp fatta in c.

Questo non e' possibile in java,per fare  libgmp a java occorre 

pressoche riscriverle da zero senza contare che il .so te lo puoi scordare.



 



Anche a me frega ben poco

In un programma normale bigdecimal lo si usa con 10/20 cifre decimali al 

massimo.

La differenza di tempi e' quindi irrilevante rispetto a libgmp.

Ma questo e' un solo un benchmark per dimostrare le differenze di 

prestazioni.

Cerco che se vuoi calcolare qualche miliardesima cifra di PI od E o 

qualunque algoritmo  che richiede un uso intensivo di grossi numeri 

potrebbe non essere l'optimum usare java anche se si usano le libgmp.

Lo strato jni porta via tempo e gli oggetti devono venire creati nello 

heap,per forza,mentre c++ va diretto a chiamare routine con entry c e 

non serve allocare nello heap se non nei casi in cui serve veramente.

Potrebbe anche non essere rilevante questo overhead in piu,dipende dall' 

algoritmo che si vuole eseguire.

Ma una cosa e' certa,non puo certo essere piu veloce od uguale a 

prestazioni a c++ proprio per le ragioni scritte sopra.




 

E' solo uno strato che serve per comunicare con c.

Che lo facciano altre classi di sistema e' irrilevante.






Il 28/01/19 16:41, 4ndre4 ha scritto:


Basta che vi mettiate d'accordo tu ed il dottore su cosa volete sapere.




 Tu pensi davvero che la tua metodologia non sia passibile di critiche?



E tu lo sai che continui a fare lo spiritoso ?

Sei stato tu a rompere i marroni su un qualcosa che e' irrilevante ai 

fini del benchmark.

Volevi sapere e ti ho risposto.

Dovresti ringraziarmi che sono stato magnanimo.




Il 29/01/19 02:14, Dr.UgoGagliardelli ha scritto:


Tu hai scritto:

Se da una tabella devi prelevare una colonna numeric(515, 512)



A casa mia una tabella puo stare in un db,in un file,in uno spreadsheet 

come excel o altro.




 



Intanto la sputtanata l'hai fatta.

Non preoccuparti,sara irrilevante.

Qui nessuno verra a scriverti che hai scritto una emerita stronzata,sono 

tutti faziosi come te !!






Il 29/01/19 06:31, Madame Damentami ha scritto:


Qui ce ne un altro.

Ma sei capace di comprendere il senso degli scritti o scrivi solo perche 

la mamma ti ha dotato un piccolo cervellino che ha appena imparato a 

scrivere ?




 non e' c allora si appoggia[...]



LOL :) No, demente, voglio semplicemente SOTTOLINEARE, non "dimostrare" (in quello riesci benissimo da solo) che sei un totale incompetente e di Java, e di C++, e di C. 



Con "C++ e` C", hai pestato il merdone massimo.


 E' uno dei motti di java.



LOL :D

Cioe`, secondo il tuo cervello bacato, il motto "Write once, run anywhere" sarebbe invalidato dal fatto che Java si possa poggiare a librerie C? Tu di programmazione non capisci veramente un cazzo.


 Anche a me frega ben poco 



allora siamo a posto.


 tutti faziosi come te !!



Non so se ha scritto una stronzata.

Con lui uso il metodo statistico.

Su 100 lanci in genere sta sempre un po sopra al 50

Sto studiando se la cosa e' sistematica!

;-)

In compenso mi hai dato la notizia che sa girar frittate.

A me vengono sempre bruciate cerchero' di /affittarlo/

per risolvere il problema.

;-)

-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 



Nessun merdone

Io ho semplicemente scritto quello che e' vero.




Il 29/01/19 14:59, 4ndre4 ha scritto:


Ma davvero ?

IL motto di java e' proprio compilo una volta e porto i .class sulla 

macchina che mi pare,basta ci sia il runtime compatibile come versione.

Con un c di mezzo gia il write once va a farsi benedire,occorre almeno 

ricompilare sperando che la piattaforma sia supportata.










 ;-)



Le frittate le gira,eccome

Poi taglia le frasi di altri a sua comodita

Ho fatto solo 2 affermazioni:

il compilatore non genera codice nativo ed a runtime vengono eseguite 

alcune ottimizzazioni.

Se conosci un po di java puoi darti una risposta e capire subito chi 

scrive puttanate.




 E' uno dei motti di java.



Ovviamente il motto e' riferito a programmi 100% pure Java. D'altra 

parte nelle librerie distribuite col jdk o col jre, e' pieno di metodi 

'native'. Ovvio che ci si debba scontrare con il porting delle librerie 

native, ma e' un problema delle librerie non del Java.






 Qui ce ne un altro.

Tutti della 'banda java'? Come fai a continuare a stupirti?






Il 29.01.2019 21.04, enoquick ha scritto:


Vedi che glissi e non rispondi?

Indifferentemente, dovunque stia la tabella, poi coi tuoi variant riesci 

a farci i conti?


 Che non abbia scritto di JIT non significa che non so cosa sia.



Viscido paraculo bugiardo. Sai benissimo a cosa ti riferivi. Hai menzionato il pcode di Pascal che non c'entra una mazza. Volevi sottolineare che il compilatore non genera codice nativo. Volevi sottolineare che il codice prodotto non e` performante come il codice C++. Dai, che ormai ti conosciamo, mascherina. Il JIT non lo hai menzionato perche` non lo conosci e perche` non ti avrebbe fatto comodo menzionarlo. 



Qui dentro, non sono io che mi sputtano, sei tu. Secondo te perche` ti sei meritato l'etichetta di paraculo? Perche` quello che rigira le frittate sei proprio tu. Non ci provare a proiettare le tue qualita` sugli altri.


 Che non abbia scritto di JIT non significa che non so cosa sia.





 Non so se ha scritto una stronzata.



To`, s'e` risvegliato il lombrico. Non lo sai perche` non hai i mezzi per saperlo.


 alcune ottimizzazioni.



Non conosci Java. Non cercare di spiegare come funziona cio` che non conosci.




 Io ho semplicemente scritto quello che e' vero.



"C++ e` C" non e` un'affermazione vera, non importa quante volte tu batta i pugnetti sul tavolo. 

Viscido bugiardo, paraculo incompetente.


 



Che bella svicolata! Continua così, non fai altro che confermare

il tuo livello di (in)competenza in campo informatico (per carità,

non ci sarebbe nulla di male, se tu fossi in grado di riconoscere

e accettare i tuoi limiti), ma soprattutto le tue solide argomentazioni

sulla mamma, sulle dimensioni del cervello altrui sono l'evidenza della

mancanza totale di argomentazioni e dell'incapacità di rapportarsi

all'interno di un discorso tra persone civili. Detto questo, continua

pure a scrivere idiozie fuori luogo e a fare la figura del babbeo.=




 ricompilare sperando che la piattaforma sia supportata.



E continui a pestare merdoni, eh? Perche` continui a farti del male a questo modo?

Ma davvero vorresti mettere in discussione la portabilita` di Java con le tue stupidaggini?

Peraltro cantando le lodi di un linguaggio come C++ che e` non portabile per definizione?

Ti piace proprio renderti cosi` ridicolo? Poi prendi merda e accusi gli altri di essere faziosi e di avercela con te?



Se sulla piattaforma A ho il runtime X, su B ho il runtime Y, e su C ho il runtime Z, e se X, Y e Z implementano una specifica versione di Java, io non ho bisogno di riscrivere il mio codice per A, per B e per C. E` un ENORME vantaggio rispetto ad altri linguaggi. Quale C di mezzo che invaliderebbe il tutto? 



Sarebbe come dire che la possibilita` di usare la stessa spina elettrica in tutta Europa va a farsi benedire se dentro la presa sul muro c'e` un impianto elettrico specifico in ogni paese.



Con C e C++, hai il problema esattamente contrario: lo standard non copre volutamente certe aree (undefined behaviour, unspecified behaviour, implementation-defined behavior) proprio per lasciare spazio agli implementatori, ma questo comporta che gli header C/C++ siano letteralmente infognati di #ifdef per gestire sistemi specifici.



E tu hai il coraggio di buttare merda sulla portabilita` di Java? Non capisci veramente un cazzo. Per dire, basterebbe aver usato una volta l'Adapter pattern nel proprio codice, per comprendere il concetto. Roba che tu non ti sei mai neanche sognato di fare, chiaramente.


 Tutti della 'banda java'? Come fai a continuare a stupirti?



Ma com'e` che entrano tutti nella banda java? Com'e` che nella banda enoquick non entra nessuno?


 (vs 2015) 



Tie`, magari hai voglia di leggere questo: 



https://blogs.msdn.microsoft.com/vcblog/2015/06/19/c111417-features-in-vs-2015-rtm/




Mi dici come ti chiami e che lavoro fai? Cosi` guardo il tuo profilo LinkedIn.




Il 29/01/19 23:13, Dr.UgoGagliardelli ha scritto:


Converti il variant nel tipo numerico voluto (anche number) e fai tutti 

i conti che vuoi






 Converti il variant nel tipo numerico voluto (anche number)



Non puoi, perche` quel tipo, in C++, non ce l'hai. Una cosa che Ugo sta cercando di farti capire da giorni, capra. Se hai un valore numerico a precisione multipla memorizzato in un db, in C++ lo puoi solo leggere come stringa. E poi che ci fai? Un calcolo come lo esegui?




Il 30/01/19 04:36, 4ndre4 ha scritto:


Invece che saper discutere e darmi del pazzo paranoico ti dico che non 

basta implementare le future richieste dallo std per essere nello std

Ci sono molti altri aspetti in c++ che tu ovviamente ignori

Un aspetto e' la two phase name lookup (che scommetto che non sai 

neanche cosa sia,ma e' una supposizione)

Fino a visual c++ in visual studio 2015 la two phase name lookup non era 

aderente agli std.

Lo e' da visual c++ implementata in visual studio 2017 (esiste comunque 

uno switch per tornare alla vecchia modalita utile per il codice legacy)

Non sono io ad affermare queste cose ma la stessa MS:



https://blogs.msdn.microsoft.com/vcblog/2017/09/11/two-phase-name-lookup-support-comes-to-msvc/






Ora,ti devo fare la traduzione dei pezzi piu interessanti o te lo leggi 

e lo comprendi da solo ?



Questa invece e' una mia nota

La two phase name lookup e' abbastanza vecchiotta

E' stata introdotta con c++11 e in g++ e' stata subito implementata.

MS ha aspettato visual studio 2017 per implementarla tanto che lo switch 

tra vecchia modalita e nuova in visual studio 2015 e precedenti non esiste.

Chiunque abbia un visual studio 2015 o precedenti lo sfido a trovare lo 

switch conformance mode,non esiste.

In visual studio 2017 e' in C/C++ language

Io lo so perche' visual studio lo uso, e per lavoro, mica come te che 

sai solo blaterare,cercare su internet e darmi del pazzo paranoico.




Il 29/01/19 15:08, rootkit ha scritto:


Tutto qui quello che hai da dire ?




Il 29/01/19 22:58, Dr.UgoGagliardelli ha scritto:


Ovviamente,l'appunto era solo sul fatto che se si introduce una lib 

nativa non di sistema ms mina la portabilita

Questo non perche non sia possibile scrivere codice portabile in C,e' 

possibile ma occorre piu riguardo rispetto a java.




Il 30/01/19 07:36, 4ndre4 ha scritto:


Tu non hai mai costruito classi per accedere ai db a quanto sembra.






 nativa non di sistema ms mina la portabilita



no.



si tratta di utilizzare una libreria runtime esterna, stop. nessun problema di

portabilità. il programma gira su tutte le piattaforme dove è disponibile la libreria,

siccome la libreria gmp è disponibile per tutte le piattaforme il problema non

esiste.



inoltre, per piacere, abbozzala con questa jni. possibile che non perdi occasione di

dimostrare incompetenza in materia?

https://en.wikipedia.org/wiki/Java_Native_Access



Il 30/01/19 02:17, Madame Damentami ha scritto:


Mi sembra che le argomentazioni sia tu a non rispettarle visto che non 

fai altro che seguire il gregge.

Se ritieni che abbia scritto puttanate scrivi le motivazioni








Il 30/01/19 08:48, rootkit ha scritto:


La discussione non era su gmp ma su  una generica lib scritta in c e non 

di sistema




 di sistema



si certo, naturalmente la discussione la vuoi come fa comodo a te.

finché ti fa comodo discuti di gmp e BigDecimal, poi quando ti si fa notare che anche

in java puoi utilizzare agevolmente gmp ecco che improvvisamente non si discute

più di gmp.



Se vuole ragione dategli ragione. Ho quasi finito i pop corn!



-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.



Beh, quando succede che servano, e' preferibile utilizzare un linguaggio 

che non ne abbia bisogno.

Saranno 20 anni che non uso piu' c/c++ quando si tratta di accedere ai 

db, trattandosi che anche elaborare un banale numeric(15, 5) succhia 

piu' risorse di quanto meriti.

E' da mo' che ho smesso di di alimentare dei personal farmework.




 Tu non hai mai costruito classi per accedere ai db a quanto sembra.



Scriversi le proprie classi per accedere ai dati e` una idiozia sesquipedale. D'altronde cosa c'e` di interessante nell'incapsulare chiamate al driver nel proprio "framework"?

Di ORM ne esistono in qualunque linguaggio, persino C++. Ma tu, essendo un totale incompetente, non sai neanche che una tale tecnologia esista e reinventi la ruota esagonale.

Non hai risposto alla domanda: con cosa li fai i calcoli in precisione mobile in C++?




 neanche cosa sia,ma e' una supposizione)



Supponi male, rimbambito. Io ho usato piu` implementazioni C/C++ di quante tu ne possa mai utilizzare in dieci delle tue misere vite professionali. Te li ho elencati in passato; non farmi ripetere le stesse cose. Continui ad attaccarti a strawmen arguments. Sei un patetico, viscido paraculo: quando non sai rispondere, ignori la domanda; quando vieni messo alle strette, costruisci un argomento fantoccio e lo attacchi. Vergognati.


 E' da mo' che ho smesso di di alimentare dei personal farmework.



che poi di che sta parlando? tutti i principali database a partire da 

oracle (ocilib) hanno (ovviamente) delle api di alto livello. davvero non 

si capisce da che pianeta è cascato.


 possibile ma occorre piu riguardo rispetto a java.



Riguardo? Le cose dille bene: richiede molto piu` sforzo.




Il 30/01/19 09:06, rootkit ha scritto:


Non si tratta di rivoltare le frittate

Ce gia chi lo fa molto bene

Se non ci credi vai a leggere i post




 Non si tratta di rivoltare le frittate



Coda di paglia eh? :)


Il 30/01/19 12:26, 4ndre4 ha scritto:


Ai scoperto l'acqua calda

Comunque la portabilita C non e' quel demone che vuoi fare credere.

In C++ poi il codice non portabile lo si incapsula in classi.

La maggior parte del codice e' ragionevolmente  portabile.




Il 30/01/19 12:12, 4ndre4 ha scritto:


Ovviamente le uniche cose che sai fare e' insultare e tagliare le parti 

che te non convengono




Il 30/01/19 12:15, rootkit ha scritto:


Quali api ha oracle di alto livello ?




Il 30/01/19 12:07, 4ndre4 ha scritto:


Strascrivi proprio perche la mamma ti ha insegnato a scrivere.

Quelle classi sono abbastanza vecchiotte poi adattate a c++11

All'epoca non esisteva un framework di classi abbastanza flessibile per 

accedere ad un db.

Oggi magari esiste,non lo so,non mi sono mai informato su questo.

I calcoli li fai come li fai usando java

Con un double ad esempio.






 le frittate sei proprio tu



Insomma siete in due?

Chi e' piu' bravo?

Io continuo a bruciarle e non mi salva neanche Java!

Ti immagino, quando tu dovessi scrivere una riga di codice,

valutare quanti picosecondi ci mette un a++ invece di a+1

Non  mi ricordo neanche piu' se a++ in java e' consentito

ma, capisco, un picosecondo e' un picosecondo risparmiarne

1 e' una /zaganella/ di tutto rispetto!



-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 un discorso tra persone civili



Dove? Da quando?



 



il solito /arrogante assolutista/ .

Parla per te.





-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Ti immagino, quando tu dovessi scrivere una riga di codice



Non immaginare, se vuoi vedermi scrivere codice, vieni a Londra. Ti aspetto. Non toccare niente, pero`.


 Quali api ha oracle di alto livello ?



https://www.oracle.com/database/technologies/appdev/oci.html




Studia.


 Con un double ad esempio.



Calcoli *IN ARITMETICA MULTIPLA*, coglione! Eccoti! Hai pestato l'ennesimo merdone che prova la tua totale incompetenza. Usi i double per calcoli dove serve la precisione multipla?



In Java si usa il BigDecimal, *non* il double.



Ti mancano proprio le basi:



https://dzone.com/articles/never-use-float-and-double-for-monetary-calculatio


https://blogs.oracle.com/corejavatechtips/the-need-for-bigdecimal




Giacche` ci sei, guardati anche questo:

https://www.gao.gov/products/IMTEC-92-26





 Parla per te.



Ah eccolo, il lombrico stordito e` nella banda enoquick. E sono 2.


 Comunque la portabilita C non e' quel demone che vuoi fare credere.



Io non voglio far credere proprio niente, viscido paraculo bugiardo. Ho semplicemente esposto la verita` dei fatti. Sei tu che stai puntando il dito contro la portabilita` di Java. Vergognati. Davvero.


 che te non convengono



Ma tu sei veramente convinto che io abbia bisogno di tagliare delle parti per rispondere a te?

Non mi convengono? :D Ti rendi conto di essere stato messo all'angolo in ogni singolo post che scrivi? Sei un totale incompetente. Non sai un cazzo. E parli.





Un /capo/ che scrive codice?

/cazzo/ comincio a rivalutarti?!

Anche se, un /capo/ che scrive codice, e' come un lombrico

che vuole essere aquila (*)



(*) Ti do sponda e' ironica e l'ironia la vedo solo quando rivolta

a se stessi altrimenti e' sarcasmo.





P.S.

A Londra ci sono stato un paio di volte mi avessi detto MiAmi o

L.A. un pensierino potevo farcelo. Anche HongKong o Singapore o

KualaLumpur potrebbero fare la loro poca figura.




Lascia stare la banda.

Esclusa quella dei Quattro, Bassotti, Bardot non conosco altre bande

Resta inteso che sei sempre sopra alla statistica!



 non ci credi vai a leggere i post



ma sì, finiamola una volta per tutte. hai ragione.


 Questo perche c++ non ha nella lib std un bigdecimal.



comunque trovo lodevole il tuo impegno per cercare di mettere a 

confronto i due linguaggi; non sono d'accordo con chi ti insulta e 

provoca, trattandoti male.


 



Io non punto un bel niente contro la portabilita di java,viscido 

girafrittate tagliapost che non piacciono per tagliare le proprio cappelle.



(bello il soprannome neee)



Anzi,e' proprio il contrario.




Il 30/01/19 14:56, 4ndre4 ha scritto:


Cavolo siamo in 2?

E l'inizio della fine per te

Continuando di questo passo tra 10 anni avro un esercito.




 Con un double ad esempio.



Come esempio, spero te ne renda conto, fa cagare.

Ti potrei fare mille esempi dove i 15 digit di precisione del double non 

sono sufficienti (14, se consideri che 1 ti serve per gli 

arrotondamenti), soprattutto quando la precisione e' imposta per legge. 

Banalmente come nel caso della conversione lira/euro; forse non ricordi, 

son passati 20 anni, nei calcoli di conversione erano richiesti 

arrotondamenti alla sesta cifra decimale: quando hai dei miliardi con 6 

cifre decimali, ecco che il double tronca.

Io ad esempio quando devo affrontare questo tipo di problemi, anche 

senza andare su Java, utilizzo un linguaggio alternativo che sia capace 

di farlo, piattaforma permettendo.

Se la piattaforma non lo permette, Java rimane l'unica soluzione 

praticabile.







In generale mi trovi d'accordo, permettimi comunque di sottolineare che 

mettere a confronto due cose di per se' non confrontabili, non e' molto 

lodevole. Ed e' ancor meno lodevole glissare sulle critiche quand'anche 

costruttive.

Quando poi ci si rende conto, che il confronto e' mirato a detrarre un 

linguaggio rispetto all'altro, ovvero senza trarre vantaggio dalle 

differenze riscontrate, ecco che e' ancora meno lodevole.

Sugli insulti, permettimi di stendere un pietoso velo, anche se 

riconosco che molto spesso si e' verificato che quel particolare 

soggetto, se li sia andati cercando.

Perche' vedi, anche mettere alla prova l'intelligenza altrui e' un 

insulto, non meno offensivo.


viscido 

girafrittate tagliapost che non piacciono per tagliare le proprio cappelle. 



Proiezione. In psicologia, si chiama proiezione. E cioè ribaltare sugli altri le *TUE* caratteristiche. Vedi sopra. Guarda, capisco che il tuo cervellino da viscido paraculo bugiardo e ignorante debba dare un senso alla realtà che percepisce e quindi la adatti come gli pare. Ogni qual volta ti trovi in un angolo, ti costruisci un argomento fantoccio e lo attacchi. Ogni qual volta non sai rispondere, glissi e ignori. Vergognati. 





In fondo, come si dice dalle nostre parti, la ragione si dà ai bischeri.



-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.


 confronto i due linguaggi



E` un confronto che, come gia` detto, non ha alcun senso. Oltretutto, lo spirito dietro questi confronti non e` genuino; Java e` la Moby Dick di enoquick. Ne e` ossessionato. E` da anni che sputa veleno su questo linguaggio senza conoscerlo.


 Continuando di questo passo tra 10 anni avro un esercito.



Che bello! Poi fate una festa? Tutti voi, gli infermieri, i dottori? Peccato per i materassi sulle pareti e le grate alle finestre che rovinano l'atmosfera.




 In fondo, come si dice dalle nostre parti, la ragione si dà ai bischeri.



di fronte poi ad un menatore professionista di can per l'aia ad un certo 

punto non resta molta altra scelta.


Il 31/01/19 03:05, 4ndre4 ha scritto:


java non e' la mia ossessione,non lo e' mai stata.

Il confronto e' proprio nato in quanto qualcuno ha affermato che java 

non ha da invidiare c++ sulle prestazioni.

E visto che le parole vanno e vengono sono passato ai fatti.

Vediamo un po questo java dove rende meglio di c++

Finora non mi sembra che abbia reso tanto.




Il 30/01/19 17:38, Geremia ha scritto:


Ti ringrazio,ma sembra che qui non facciano altro che attaccare la 

persona invece che i benchmarks




 

Chiamiamo le cose col loro nome. Non benchmarks ma "overthinking".



 insulto, non meno offensivo.



Non insulto proprio nessuno ad intelligenza.

A me sembra proprio l'opposto,quante volte mi e' stato scritto che non 

so questo o quest'altro o che non so scrivere codice od altro

C'e un tizio,poi,chiamato Andrea che l'unica cosa che da fare e' 

insultare senza portare niente di utile.

E' nonostante gli auto sputtanamenti procuratisi continua.






 



letteralmente "pensando troppo"

Non ne capisco il senso.





overthinking = sega mentale



Il 31/01/19 05:51, rootkit ha scritto:


Semplici attacchi sulla persona

la solita svicolata quando non si hanno argomenti




 



Un altro con il cervellino piccolo che segue il gregge ?

Vai a leggere i post invece che scrivere puttanate




 



Io non taglio i post,coglione

(ogni tanto ci vo)


 overthinking = sega mentale



ma secondo te, se ha un fuso orario -6, dove potrebbe essere?

usa o canada mi rifiuto di pensarlo, con questo inglese da ritardato non 

camperebbe una settimana.



Siccome gli inglesi sono formalmente ineccepibili dal punto di vista 

dell'educazione e della gentilezza, quando definiscono qualcuno 

"overthinker" è per definirlo uno che pensa molto/troppo. Se ci 

aggiungono un sorrisetto allora significa che lo considerano uno da 

seghe mentali. Appunto.



 



questa raffinata disamina dovrebbe fare di Lei un esperto di brainwanking



 



Il tuo neologismo [brain+wank(ing) ---> cervello+pippa] è l'esatta 

fotografia della tua totale assenza di qualsivoglia 

attendibilità/autorevolezza su qualsiasi argomento dello scibile umano. 

Esclusi, forse, i cantieri stradali. Nonostante ciò, insisti ad 

atteggiarti a maestro di pensiero ed a collezionare figure di merda, 

specialmente con i tuoi ridicoli esercizi di retorica.



Mi permetto di aggiungere un parere del tutto personale ed opinabile: 

sei un coglione a tutto tondo.



P.S. ricordati di prendere la pasticchina, che poi fai confondere la 

badante.



 Vediamo un po questo java dove rende meglio di c++



Potresti fare confronti del genere, se usassi Java per lavoro. Ti sono stati postati dei link a benchmark fatti seriamente, specialmente sul parallelismo, in cui si e` dimostrato che Java ha performance paragonabili, se non migliori di C++. Li hai volutamente ignorati rispondendo con un "eh, ma perche` dovrei credergli? Chissa` da dove li hai presi 'sti link!". E perche` uno dovrebbe mai dar retta ad un colossale COGLIONE come te? Ovviamente non e` gente idiota, che apre 30000 thread e li fa morire senza fare niente. Magari e` qualcuno che si impegna ad usare un fork/join per un contesto serio.


 persona invece che i benchmarks



Se uno continua a sbattere la testa contro lo stipite di una porta, e un altro gli dice "ehi, guarda che la porta e` li`, devi passarci in mezzo!" e lui risponde: 'sti cazzi, a me piace sbattere la testa contro lo stipite!", non e` che si sta li` a giudicare se quel che fa e` giusto o meno; gli si da` direttamente del coglione. 




 E' nonostante gli auto sputtanamenti procuratisi continua.



Devi cercare di uscire da questo loop di illusioni che ti crei per autoconfortarti.  Continui a sbraitare stupidaggini. Ti stai facendo solo del male. Accusare me di sputtanarmi, con il mare di sputtanamenti, puttanate, merdoni pestati, non ti aiuta, sai? Viscido bugiardo che non sei altro.


 Non ne capisco il senso.



LOL :)




 Il tuo neologismo [brain+wank(ing) ---> cervello+pippa]

https://www.urbandictionary.com/define.php?term=brainwanking


Questo solo per non prenderne /tutti/ i meriti

Sul resto glisso e rimando a quanto in firma  (terza riga)



 Io non taglio i post



No, certo, ti basta dire e poi mentire di averlo detto. Viscido par


   Ti stai facendo solo del male. Accusare me di sputtanarmi, con il mare di sputtanamenti, puttanate, merdoni pestati, non ti aiuta, sai? Viscido bugiardo che non sei altro.



Mammaaaaaaaaaaaa.... enoquick mi ha rubato la merendaaaaaaaaaaaaaaaaaaa!

La mamma (sagace):

E tu /piccolo/ andrea stai piu' attento a non fartela rubare!



 sei un coglione a tutto tondo.



Condivido. 

Bisogna perdonarlo, pero`, e` alla costante ricerca d'attenzione.


 Mammaaaaaaaaaaaa.... enoquick mi ha rubato la merendaaaaaaaaaaaaaaaaaaa!



Maaammaaaaaa, i bambini la` fuori non mi fanno giocareeee! Dicono che sono scemo!

La mamma (sagace): 

E tu /piccolo/ sandrino stai piu` attento! Gioca dentro casa! Vieni che insegno a ricamare.


 Bisogna perdonarlo, pero`, e` alla costante ricerca d'attenzione.



Vero!

Come hai fatto a scoprirlo?

Devi essere un wanker di tutto rispetto!

Significa genio, vero? se non fosse cosi' me ne duole

ma al /latino/  non sono avvezzo.



 Maaammaaaaaa, i bambini la` fuori non mi fanno giocareeee! Dicono che sono scemo!



I bambini sono piu' intelligenti degli adulti.

Ma..., in questo caso..., avevano le loro buone ragioni!



Stavolta mi sono permesso un /dirtyquoting/ ,succede,

quando le /apples/ si sono /rotten/.



Il 31/01/2019 16:25, enoquick ha scritto:


Non ho seguito il 3d nella sua completezza.

Mi sembra che sia i terzo 3d che fai sull'argomento.

Il fatto che ci siano alcuni personaggi che vogliano dimostrare

che il loro arnese sia piu' prestazionale di altri e' ormai

un assioma.

La mia domanda, da /newbie/ e' :

Java e c++ sono in grado di trattare i /bigdecimal/ in modo nativo?

Intendo senza appoggiarsi a cose che vadano oltre le /librerie/ standard 

dei linguaggi?

Ed anche in questo caso. E' tale cosa /interessante/ per valutazioni

prestazionali?.

secondo me non lo e'.

Le valutazioni, ove mai mi fossi posto il problema,

le avrei fatte con un semplice ciclo:

---

stampa/visualizza tempo

per x=1 fino a 10^x  (x via via progressivo)

fine ciclo

stampa/visualizza  tempo

---

e successivamente nel ciclo avrei inserito qualche

banale istruzione tipo

a=a+1 o stampa/visualizza "Hello"

Una volta /tarato/ il sistema sul ciclo tutto cio'

che metti all'interno del ciclo diventa un di cui.

Non serve andare alla 10^10^10^10^10 cifra del /Pie/

per verificare se il sesso degli angeli e' come il gatto di Schroedinger



 



Non seghe mentali,divertimento




 





Continua a tagliare le frasi a tuo uso e consumo



 



Certo che chiamare le OCI api ad alto livello ce ne vuole

Anche se hanno una interfaccia c++

Poi se cambio db che faccio ?

Riscrivo tutto ?




 



Forse non hai capito una cosa

Il tuo caro testa di (lasciamo perdere) ha chiesto numeri floating point

Non  mi ha scritto per cosa usarli

Un numero floating point e' ad esempio un double

Risposta perfettamente corretta alla sua domanda.

Ma secondo te uno come me che conosce molto bene anche COBOL non  sa di 

queste problematiche ?

PS: il COBOL e' ancora molto usato nell'ambito finanziario per chi non 

lo sa






 



Io  non parlo,semmai scrivo

Ed e' inutile che affermi di non tagliare

Da bel fazioso toro che vede rosso tagli le parti che scottano

Quelle belle parti dove scrivi delle belle cappelle megagalattiche






 



Quei link sono delle puttanate

Avevo pure spiegato i motivi

Ho solo ricevuto insulti


Il 31/01/19 17:03, Alessandro Cara ha scritto:


Per java Bigdecimal e' scritto in java quindi e' nativo

Per c++ idem in quanto le libgmp sono in c,volendo perfettamente 

adattabili a c++ e senza perdita di prestazioni grazie alla 

compatibilita con c

PS:

il benchmark e' per testare i bigdecimal,se metti altro come una print 

puoi falsare i risultati.











ma se fino ad un messaggio fa dicevi di farti pure le conversioni dei 

tipi? adesso vuoi anche l'astrazione multidatabase?


 Continua a tagliare le frasi a tuo uso e consumo



LOL :) Ho riportato esattamente quello che hai scritto, idiota. Non ho bisogno di tagliare niente. Ti smerdi benissimo da solo.


 Riscrivo tutto ?



Non dovresti scrivere niente dall'inizio. Ti sono stati gia` menzionati gli ORM. Vai a studiare.






 Precisione mobile ---> floating point in inglese



*VIRGOLA* mobile, non precisione mobile. Io ho citato la precisione *multipla*. Esattamente quel che "floating point" significa in inglese. Incredibile.



Usi una libreria che usa i bigdecimal? La differenza (e sono 10) e` che in C++ quella libreria NON ce l'hai di default, con Java si`. Con Java avrai codice garantito come portabile; in C++ no. 



E questa e` una bella differenza e un grosso punto a favore di Java. Se poi scrivi gestionali in C++, allora sei veramente un coglione. 


 queste problematiche ?



Io mi meraviglio che "uno come te" sappia riconoscere la destra dalla sinistra.


 Quelle belle parti dove scrivi delle belle cappelle megagalattiche



Continua a sognare. Stai parlando di te stesso, enoquick. In questo thread, con la storia della "pecisione mobile", hai pestato l'ennesimo merdone.


 Quei link sono delle puttanate



Si`, eh? Se lo dici tu, ci crediamo.


 Per c++ idem in quanto le libgmp sono in c,volendo perfettamente 



Idem sto cazzo. C++ non ha un tipo a precisione multipla nativo.



Uno ti chiede: "Hai il latte in casa?" e tu rispondi "Certo che ce l'ho! Mi basta fare un salto al supermercato!"






 *VIRGOLA* mobile, non precisione mobile. Esattamente quel che "floating point" significa in inglese. Io ho citato la precisione *multipla*. Incredibile.



Non vorrei che il tuo cervello andasse in tilt per l'ordine delle frasi.



C'era uno che si divertiva a tirarsi le martellate sui coglioni. 

Indovina quando godeva.



-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.


Il 01/02/19 00:17, rootkit ha scritto:


Dimmi una cosa

In jdk se cambia db devi utilizzare classi differenti ?




Il 01/02/19 01:44, 4ndre4 ha scritto:


Se voglio mettere un myql ad esempio posso utilizzare le oci++ ?




 Se voglio mettere un myql ad esempio posso utilizzare le oci++ ?



Rincoglionito, non costruirti l'ennesimo argomento fantoccio da attaccare. Poi so' gli altri che tagliano a cazzo eh? Ho scritto "Se usi Oracle, usi quello, non classucce ad-hoc come le tue".



Se vuoi una suite cross-db, ti affidi ad un ORM - e sono tre.




 In jdk se cambia db devi utilizzare classi differenti ?



In JDK? Ma che cazzo scrivi? Altro argomento fantoccio. Con Java, ti sarai presumibilmente affidato a Spring Data con un ORM sotto (e.g. Hibernate, MyBatis, etc..). Col cazzo che mi scrivo le classi per accedere ai dati, quando ci sono fior di librerie/frameworks.




Il 01/02/19 07:36, 4ndre4 ha scritto:


Non hai risposto alla domanda

Devi rispondere solo si o no




Il 01/02/19 01:44, 4ndre4 ha scritto:


Quali ORM,postami un package di classi per qualunque db




Il 01/02/19 07:33, 4ndre4 ha scritto:


Ma chi ti ha detto che uso solo oracle ?




Il 01/02/19 02:25, 4ndre4 ha scritto:


Non so che intendi per precisioni mobile

E' un termine che non conosco




 In jdk se cambia db devi utilizzare classi differenti ?



ok dai, hai ragione.


 Non hai risposto alla domanda



Argomento fantoccio. Alla tua domanda non e` possibile rispondere ne` con un si`, ne` con un no, perche` pressuppone un utilizzo di Java che non e` quello normale. In Java (cosa significa "in JDK"?), se cambia db, me ne sbatto le palle. Uso un ORM. 




 Quali ORM,postami un package di classi per qualunque db



Tu sei l'unico scemo che si costruisce un "package di classi per qualunque db" artigianale. Gli altri usano ORM - che tu, ovviamente, come tanto altro, non sai neanche dove sta di casa.


 Ma chi ti ha detto che uso solo oracle ?



Ma anche 'sti cazzi. Era un esempio. Vale il principio, deficiente.




 E' un termine che non conosco



Che fai, trolli?




Il 01/02/19 10:43, 4ndre4 ha scritto:


Lui usa gli ORM

ma che bravo

Gli ORM non sono la panacea per tutto




Il 01/02/19 10:44, 4ndre4 ha scritto:


No,spiega cosa intendi per numero a precisione multipla (mobile e' stato 

un errore di riscrittura)




 



OpenMP e' solo un aspetto di un linguaggio

E poi avevo gia contestato quell'articolo a suo tempo

Ricevetti solo insulti

Quando poi ci sara un  benchmark su openMP si vedra


 



Lui,ma vedere qualcuno che rosica non ha prezzo.

E poi saranno fatti miei

Ognuna si diverte come vuole.




Il 01/02/19 02:19, 4ndre4 ha scritto:


Qualunque cosa tu intenda per numero a precisione multipla non lo ha 

neanche c visto che non i intendi i double






 Gli ORM non sono la panacea per tutto



Altro argomento fantoccio? 




 No,spiega cosa intendi per numero a precisione multipla 



Ma vai a cagare, incompetente che non sei altro. Pretendi di usare la gmplib senza manco sapere a che serve? Demente.



https://en.wikipedia.org/wiki/GNU_Multiple_Precision_Arithmetic_Library



 OpenMP e' solo un aspetto di un linguaggio



OpenMP non e` un "aspetto" di nessun linguaggio. Ma cosa vuoi contestare! Non sai neanche le definizioni di base. Sei un cretino.


 neanche c visto che non i intendi i double



Java ce l'ha - tie`.




Il 01/02/19 14:42, 4ndre4 ha scritto:


Prima tiri fuori un framework di classi solo per oracle che solo un 

demente potrebbe consigliare a meno che non sia un super affezionato di 

oracle ed usa solo quel db.

Quelle classi le conoscevo gia,sono abbastanza vecchiotte e le avevo 

scartate.

Adesso tiri fuori gli ORM

Della serie se devo estrarre un numero mi devo fare una classe,almeno da 

quello che ricordo in java.

Ma per favore.




Il 01/02/19 14:44, 4ndre4 ha scritto:


Mi sa che tu i post non li leggi proprio

Come avevo scritto in passato leggi enoquick e vedi rosso.

Ma se il calcolo di pigreco in c++ ho usato  le gmp.

La prossima volta prima di insultare pensaci due volte

Ma tanto e' il tuo sport quotidiano.




Il 01/02/19 14:45, 4ndre4 ha scritto:


Ma no,sono il lattaio che va a vendere il latte.




Il 01/02/19 14:46, 4ndre4 ha scritto:


Sto piffero

Java ha solo i double come c e c++

Al massimo le ha nella lib std,lente comunque se intendi i bigdecimal.




 Al massimo le ha nella lib std,lente comunque se intendi i bigdecimal.



cioè stai dicendo che un numero *decimale* a precisione multipla tu te lo 

aspetti come tipo nativo?



lo sai vero che il computer sotto ragiona in binario?



lo sai vero che i tipi decimal, big o small, nei vari linguaggi si usano 

prima di tutto perché non tutti i numeri razionali rappresentabili in 

decimale non sono rappresentabili in binario, e non solo per calcolare la 

n-milionesima cifra del pigreco?



lo sai vero che: 



(1.1 + 2.2) == 3.3



usando i floating point è falsa?




 Ma per favore.



Fai pena. Veramente non sai un cazzo di programmazione. E` scandaloso che tu dica anche soltanto che programmi per lavoro. Solo un demente userebbe le OCI? Tu sei completamente fuori di testa, ragazzo. Davvero, fatti vedere da un dottore bravo. Gli ORM non sai neanche dove stanno di casa. Le applicazioni serie, con accesso ai dati, si scrivono cosi`. Che` non si tratta di quattro cazzatine che fai tu, ma di sistemi enterprise per i quali scriversi un "package di classi di accesso ai dati" significa darsi una grossa martellata sulle palle e non si fa di certo il bene del progetto. Io non tiro fuori niente, rincoglionito, si sta rispondendo al mare di imbecillita` che scrivi, dandoti controesempi concreti. Cose che tu ovviamente ignori, sulle quali glissi, o con cui costruisci argomenti fantocci, viscido paraculo incompetente.




 Ma se il calcolo di pigreco in c++ ho usato  le gmp.



Le hai usate senza neanche sapere a che servono, visto che quel "mp" in "gmp" significa "multiple precision". Cosa che tu stesso hai ammesso non sapere cosa significhi. Veramente fai cadere le braccia. Idiota e incompetente che non sei altro.


 Ma no,sono il lattaio che va a vendere il latte.



Manco come lattaio saresti capace.




 Al massimo le ha nella lib std,lente comunque se intendi i bigdecimal.



Ma anche 'sti cazzi! Si sta parlando di tipi che il linguaggio ti offre out-of-the-box. Frega cazzi se e` un tipo built-in o una classe della libreria standard. E` un *TIPO* offerto dal linguaggio, e valido su tutte le piattaforme su cui quello standard e` implementato. Quali "lente", deficiente? Smettila di usare argomenti fantoccio per difendere le tue tesi indifendibili, idiota incompetente.




 aspetti come tipo nativo?



E` il sesso degli angeli su cui gli piace disquisire. A dirla tutta, neanche i tipi floating-point built-in[1] di C/C++ mappano necessariamente su un tipo IEEE 754 - vedi il "long double". Non molte macchine supportano il "long double", che dev'essere implementato via software. E` quella specifica implementazione di C/C++ che emula il supporto hw di una FPU, esattamente come una JDK implementa BigDecimal/BigInteger via software. D'altronde, se si implementasse un tipo decimale in C/C++, si dovrebbe fare la stessa cosa. Il bello che continua a buttare merda su Java, che quel tipo ce l'ha, e a glissare del tutto sul fatto che C/C++ quel tipo non ce l'hanno.



[1] "nativo" non significa "built-in" o "primitivo", come pensa lui






Il 02/02/19 04:16, 4ndre4 ha scritto:


Io non ho scritto che gli ORM non servono,ne ho usato uno in java molti 

anni fa.

Ho solo fatto un appunto.

Ritengo che gli ORM siano utili in determinati contesti ma non in altri.

I quanto alle OCI,l'interfaccia c,le ho usate per oracle native nel mio 

framework per accedere a oracle.

Solo per fare una connessione ci vogliono una 50 di righe di codice c o c++

Le OCI non sono fatte per comuni programmi,ma solo come strato su cui 

costruire interfacce piu amichevoli.








Il 02/02/19 04:17, 4ndre4 ha scritto:


Sei veramente forte,faccio un programma che usa la libgmp e non so a che 

serve.

Semmai e' solo il termine che non conoscevo,ma so benissimo a che 

servono le libgmp

Le ho usate.




Il 02/02/19 04:18, 4ndre4 ha scritto:


Non io,le librerie




Il 02/02/19 01:39, rootkit ha scritto:


Tu dovresti fare il giornalista

Da una semplice affermazione ci costruisci su un caso.






Il 02/02/19 04:21, 4ndre4 ha scritto:


Anche tu dovresti fare il giornalista




 





Quello di appoggiarsi a c ?

Se fosse cose cosi ,a parte le librerie di sistema,dove sta la tanto 

decantata compila una volta esegui dovunque ?

E' uno dei motti di java.





Questo e' quello che avevo affermato.

Tutta la frase nel suo contesto completo assume un ben differente 

significato.

Quella frase significa che se per un programma lo fai appoggiare su una 

lib c si mina la portabilita,il che e' vero.

Solo questo significa.

Se poi nella tua bella testolina ci leggi un attacco a java non so che 

farci.






 



Risposta insulsa

Metti di fare un programma dove usare un ORM non serva

Useresti direttamente jdk.




Il 02/02/19 04:50, 4ndre4 ha scritto:


Occorre specificare i termini tanto per comprendere meglio

native -> il tipo e' mappato direttamente sull'hw,su questo Andrea ha 

ragione quando afferma che il long double potrebbe essere emulato via sw 

in c/c++,e se e' emulato non e' un native.

built-in - il tipo e' mappato a livello di linguaggio

E' ovvio che dato un determinato linguaggio non tutti i tipi builtin 

devono essere per forza native.










Il 02/02/19 04:50, 4ndre4 ha scritto:


A proposito,nello scritto di prima ho dimenticato di aggiungere un 

piccolo appunto

La tua si chiama diffamazione,ed e' perseguibile per legge.

Ora quando mai ho scritto qualcosa che facesse capire che native e 

builtin siano la stessa cosa ?




>Quella frase significa che se per un programma lo fai appoggiare su una 

lib c si mina la portabilita,il che e' vero.



Come ti è stato già detto, la portabilità di *quel* programma specifico. Il che vale anche per il programma C/C++ che scrivi usando quella libreria. Cosa cazzo c'entra il motto di Java, idiota incompetente che non sei altro? Stai cercando di coprire merdoni con altri merdoni. Guarda che io non ho nessun interesse a tagliare quello che scrivi. Devi prenderti la responsabilità delle cappelle che posti.


 



Devo pure specificare le ovvieta ?

E' ovvio che se un programma usa una lib native solo la sua portabilita 

e' minata




>E' ovvio che se un programma usa una lib native solo la sua portabilita 

e' minata



E allora di che cazzo stai parlando?? Cosa c'entra la "tanto decantata portabilita di Java"? 


>Sei veramente forte,faccio un programma che usa la libgmp e non so a che 

serve.



Chiedilo al tuo psichiatra, mica a me. Il fatto che tu "faccia programmi", non significa che tu sappia quel che stai facendo, come ampiamente dimostrato qui dentro. Hai scritto che non sai cosa significa precisione multipla. Al tempo stesso usi una libreria che ha "mp" nel nome. Come si spiega? Diccelo tu.


 



La portabilita di java (per quel programma e solo per quel programma) 

viene minata.

La frase "tanto decantata" non e' scritta per affermare che non sia vero.

E' semplicemente per affermare che e' uno dei punti di forza di java.




 decimale non sono rappresentabili in binario



A parte, forse, un /non/ di troppo.

E, se i /non/ sono giusti non ho compreso.

Questa, per favore, me la spieghi?



-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 compatibilita con c



Perdonami c o non c .

Se vuoi raffrontare due cose lo devi fare con gli stessi ingredienti.

Metti le gmp in java e vedi che succede.

Inoltre, da quello che scrivi, si direbbe che java e' migliore poiche'

e' in grado, senza _aiutini_ esterni, di produrre il caffe' richiesto

pur con tutti i limiti da te citati.

L'altro no. Si deve rivolgere a torrefazione esterna di provata 

esperienza e qualità.



Una cosa scritta in c, se scritta *male* , probabilmente e' meno 

prestazionale del basic di una volta.

Come qualsiasi cosa scritta *male* in qualsivoglia linguaggio.



Un po di tempo fa mi e' capitato di intervenire su un problema 

riguardante i tempi di risposta di un RDB(MS). Visto il codice ho

consigliato una modifica. La  cosa era talmente ovvia che, naturalmente,

i tempi di risposta si sono abbassati drasticamente e la cosa era

a prescindere dal possibile RDB(MS) e l'SQL era query abbastanza

banale.



 



Tu hai veramente bisogno di uno psichiatra

Faccio un programma per calcolare pigreco e ti sembra che non sappiano a 

che servono ?

C'e solo stato un fraintendimento sul termine "precisione multipla",solo 

su questo.

E' inutile che cerchi di costruirti su muri pindarici.

Tanto per non cambiare cerchi sempre di diffamare il sottoscritto 

dimostrando che non vale niente per cui i benchmark non valgono niente.

Non funziona cosi

Anche se non sapessi qualcosa non e' attinente con i benchmarks a meno 

di dimostrare il contrario,ma sul codice dei benchmarks non su altri 

argomenti come teorie campate per aria su libgmp,o ORM o native e tutto 

il resto.

Quelle belle teorie,visto che teorie sono,hanno un solo scopo

Diffamazione.






 



Vero,ma qui si e' usato libgmp che e' stata scritta da persone molto 

competenti in c.

Non ho mai preso in considerazione altre lib di precisioni multipla per 

linux ma so che libgmp e' veloce

Per calcolare qualche miliardesima cifra di pi vengono proprio usate le 

libgmp.



 Tu dovresti fare il giornalista 



e tu invece il sottosegretario al ministero dell'economia.




 



Che non e' attinente con l'informatica

Spero che tu non voglia iniziare una discussione su ambito economico.

Non e' certamente il luogo adatto.




 



La affermazione  di rootkit e' alquanto generica.

Intanto la definizione.

Per numero razionale si intende un numero che e' ottenibile dal rapporto 

di due interi (a/b con b <> 0)

Quindi veniamo all'affermazione di rootkit.

E vera o non vera ?

Dipende:

Se la sua frase e' intesa come numero perfettamente rappresentabile 

allora si

Ad esempio 1/3 non e' perfettamente rappresentabile

Ma che sia in binario od in decimale od in qualunque base si scelga e' 

ininfluente.

Ma se rappresentiamo 1/3 come una coppia di 1 e di 3 (in c++ esiste 

proprio una classe nella lib std per questo) allora l'affermazione e' falsa.





ma figurati. era solo una battuta che ovviamente non hai capito proprio 

perché azzeccata.


Il 02/02/19 12:12, rootkit ha scritto:


ma mi sa che la battuta sul giornalista tu non l'abbia capita




 Le OCI non sono fatte per comuni programmi



Smettila di scrivere stupidaggini.


 



Comunque, osservo, che stai tenendo il NG bello allegro ;-)



 



IL principio che volendo avere ragione scriveresti un programma c++ 

usando solo classi per un determinato db

Se il programma e' un uso e getta ci puo stare.

Ma solo in quel caso.




 Questa, per favore, me la spieghi?



è molto semplice.

come sicuramente sai 1/3 lo rappresenti come frazione, ma il risultato 

non è rappresentabile esattamente in decimale.



la stessa cosa avviene con i binari. per esempio 0.1 decimale non è 

rappresentabile nella notazione binaria ieee bensì viene applicata una 

approssimazione, che si trasforma in errore quando vai a fare operazioni 

aritmetiche. come nell'esempio che ho fatto (1.1 + 2.2) == 3.3 fatta 

usando i floating point è false.



il problema, ripeto, c'è anche nei numeri in base 10 come ad esempio 1/3, 

5/6, etc... solo che noi umani ce lo aspettiamo. mentre numeri come 1.1, 

che in notazione decimale vediamo rappresentati esattamente, non ci 

aspettiamo che invece siano rappresentati con approssimazione. 


 ma mi sa che la battuta sul giornalista tu non l'abbia capita



e come no, ho riso sguaiatamente fino a farmi venire un'ernia.


 La affermazione  di rootkit e' alquanto generica.



rotfl.


 Da una semplice affermazione ci costruisci su un caso.



Cervello di enoquick: "Cervello di enoquick a enoquick! Cervello di enoquick a enoquick! enoquick rispondi!"



enoquick: "che c'e`?"



Cervello di enoquick: "non ci ho capito un cazzo di quello che ha scritto rootkit, che faccio?"



enoquick: "inventati qualcosa!!"



Cervello di enoquick: "La butto in caciara come al solito?"



enoquick: "Vai!"


 native -> il tipo e' mappato direttamente sull'hw



Questa e` la tua personalissima interpretazione di "nativo". Il termine "nativo" puo` avere un ampio range di significati. Esista una terminologia specifica per i tipi: si parla di primitivi o built-in, non "nativi". Anche il BigDecimal viene offerto dalla JDK come nativo, perche` e` out-of-the-box, non devi aggiungere niente. A prescindere che sia mappato o meno sull'hardware.




 builtin siano la stessa cosa ?



Smettila con queste idiozie. Il termine "native", come gia` detto, e` astratto. Non appartiene alla terminologia tradizionale sui tipi. Si parla da sempre di primitivi e built-in.




 viene minata.



Ma che cazzo significa? Guarda che i bestemmioni li tiri dal profondo della gola con le tenaglie, eh? Rigiri n'altra volta la questione. Cosa cazzo significa "la portabilita` Java di quel programma"?

Hai puntato il dito contro la "tanto decantata" portabilita` di Java che andrebbe a farsi benedire; contro il "write once, run everywhere". L'hai scritto tu. Non farmi andare a prendere i pezzi eh?

Il principio "write once, run everywhere" indica semplicemente che se scrivo un programma Java che si appoggia a librerie garantite standard, saro` in grado di far girare quel programma ovunque quello standard e` supportato, senza modifiche al codice. Ora, se a te va di usare una libreria esterna, non portabile, nel tuo specifico programma, cosa cazzo c'entra la portabilita` Java? Cosa c'entra il write-once/run-everywhere? 


 Tanto per non cambiare cerchi sempre di diffamare il sottoscritto 



Tu ti diffami da solo.




 Useresti direttamente jdk.



Ne` con JDK, ne` con un ORM devi riscrivere tutto. Sono portabili per definizione. Non si capisce proprio dove tu voglia andare a parare con certe stupidaggini. Non sai proprio replicare al fatto che oggi, nel 2019, scriversi la propria suite artigianale di classi per accedere ai dati e` una stupidaggine colossale.


 usando solo classi per un determinato db



No, il principio che, volendo usare Oracle, non mi scrivo di certo un package di classi mio, ma mi affido a cio` che Oracle offre gia`. Imbecille. 


 La affermazione  di rootkit e' alquanto generica.



No, non lo e`. E` un'affermazione che comprende chiunque abbia delle basi di Calcolo Numerico. Conoscenza che a te manca completamente. Lui sta parlando di rappresentazione INTERNA, quella binaria usata dalla macchina. Il fatto che tu abbia una classe che astrae un numero razionale come 1/3 non significa una ceppa. Cristo, fai veramente cadere le braccia.


 No, non lo e`. E` un'affermazione che comprende chiunque abbia delle basi di Calcolo Numerico.



Il problema e' che prima di arrivare al calcolo numerico avrebbe bisogno 

di una aggiustatina al Calcolo Italiano.

E non voglio dire che rootkit non conosce l'italiano.

Ora tu esperto di calcolo numerico spiegami il senso di quella frase 

cosi' come e' scritta!



 non è rappresentabile esattamente in decimale.



Come in qualsiasi altra base. Punto.



Cosa facciano i calcolatori, per certi versi, non mi interessa a

meno che non si ricada nel /bug/ di Nicelyana memoria.



 Come in qualsiasi altra base. Punto.



trollami sta ceppa.


Il 02/02/19 13:46, 4ndre4 ha scritto:


Mai detto il contrario.

E comunque la suite non l' ho scritta oggi ma molti anni fa,ben prima di 

c++11




Il 02/02/19 13:48, 4ndre4 ha scritto:


Volendo usare oracle e per un programma usa e getta va bene

Se si vuole fare un programma che poi magari in futuro deve prevedere 

altri db allora e' un'altra storia


Il 02/02/19 12:25, 4ndre4 ha scritto:


E' arrivato l'esperto



Codice reale,sono per l'inizio e senza connessione



void connector::env_create() {

					status_t status = ::OCIEnvCreate(

						&m_env

						, OCI_DEFAULT //  mode

						, 0

						, reinterpret_cast<dvoid * (*)(dvoid *, size_t)>(0)

						, reinterpret_cast<dvoid * (*)(dvoid *, dvoid *, size_t)>(0)

						, reinterpret_cast<void(*)(dvoid *, dvoid *)>(0)

						, 0

						, reinterpret_cast<dvoid**>(0)

					);

					if (status)

						p_throw(status, this->err(), "OCIEnvCreate failed", __FILE__, 

__LINE__);



					status = ::OCIHandleAlloc(

						m_env

						, reinterpret_cast<dvoid **>(&m_server)

						, OCI_HTYPE_SERVER

						, 0

						, reinterpret_cast<dvoid**>(0)

					);

					if (status)

						p_throw(status, this->err(), "OCIHandleAlloc (OCI_HTYPE_SERVER) 

failed", __FILE__, __LINE__);



					status = ::OCIHandleAlloc(

						m_env

						,reinterpret_cast<dvoid **>(&m_err)

						, OCI_HTYPE_ERROR

						, 0

						, reinterpret_cast<dvoid**>(0)

					);

					if (status)

						p_throw(status, this->err(), "OCIHandleAlloc (OCI_HTYPE_ERROR) 

failed", __FILE__, __LINE__);

				}




Il 02/02/19 13:42, 4ndre4 ha scritto:


Niente da fare, i muri hanno piu orecchie

Tanto tu vuoi solo diffamare,inutile discutere con te




 



Sempre le solite storie

Ti inventi puttanate nel tuo bel cervellino e sei convinto che sia vero




Il 02/02/19 13:52, 4ndre4 ha scritto:


E' arrivato l'avvocato




 



cosa e' la pecisione ?

Un merdone da pestare ?




Il 02/02/19 13:22, 4ndre4 ha scritto:


Ovvio,leggere i tuoi rosiconi non ha prezzo




Il 02/02/19 13:02, rootkit ha scritto:


Va bene,quel bel discorsetto che ho fatto era piu per polemizzare in 

modo ironico che una vera lettura.

Lo so che tu sai queste cose.

Ora pensandoci bene,per quale motivo il sottoscritto non dovrebbe saperle ?

E per quale motivo il sottoscritto dovrebbe aspettarsi che un bigdecimal 

sia nativo o builtin ?

Volendo potrei mettermi a polemizzare su qualunque cosa tanto per 

tentare di ridicolizzare qualcuno ma non mi ci metto a simili livelli.






 



ma certo,e vedere qualche rosicone non ha prezzo




 Cosa facciano i calcolatori, per certi versi, non mi interessa



E` proprio li` il problema.


 cosi' come e' scritta!



Io non ti spiego un cazzo. Ti cerchi "What Every Computer Scientist Should Know About Floating-Point Arithmetic" di Goldberg e te lo leggi.


 E comunque la suite non l' ho scritta oggi 



Il discorso non cambia.


 tentare di ridicolizzare qualcuno ma non mi ci metto a simili livelli.



in effetti tu solitamente trolli ad un livello molto più infimo.

ad ogni modo: a parte che non ho risposto a te ma a quell'altro fenomeno 

che aveva chiesto chiarimenti, ti faccio notare in quel messaggio non c'è 

traccia di ironia ne sarcasmo. ho semplicemente spiegato perché ci sono i 

tipi decimal e perché si usano comunemente per i calcoli scientifici e 

finanziari. se lo sapevi già bastava dire "ah sì, è vero", mentre se la 

ritenevi sbagliata bastava dire "no guarda, le cose stanno in quest'altro 

modo". fine. 



se ti senti umiliato da una simile spiegazione se vuoi posso mostrarti 

quanto è grande il cazzo che me ne frega.




 Volendo usare oracle e per un programma usa e getta va bene



Basta con queste idiozie e cerca di capire quel che gli altri scrivono. Quale "usa e getta"? E` il tuo ennesimo argomento fantoccio. Ti e` stato gia` detto che il succo del discorso non era quello. 


 E' arrivato l'esperto



Ti ho scritto del codice reale nel mio precedente messaggio. Due righe. Smettila di trollare.


 Tanto tu vuoi solo diffamare



Diffamare? Hai scritto o no che non sai cosa significhi "precisione multipla"? 


 Sempre le solite storie



Guarda che ti conosciamo, mascherina. Il tuo bias verso Java lo hai espresso molte volte, qui dentro. E bada che a me, di difendere Java, non me ne frega una ceppa. E` una questione di principio. I tuoi benchmark sono fallati dal tuo pregiudizio nei confronti di un linguaggio rispetto all'altro. Come pretendi di essere creduto?


 Ora pensandoci bene,per quale motivo il sottoscritto non dovrebbe saperle ?



Perche`, per esempio, sei un incompetente in materia? 


 ultra in fatto di velocita



Chi? Dove? Quando? Queste sono tue fantasie. Ti e` stato detto che Java, oggi, in molti contesti, e` comparabile a C/C++ se non a volte migliore. Cosa verissima e supportata da link, documenti, risorse, che tu hai volutamente ignorato.




 usando i floating point è false.



Giustissimo. 



Esempio che e` facilmente supportato dai fatti, peraltro.



Innanzitutto verifichiamo che sia vero:



#include <stdio.h>



int main() {

    double a = 1.1;

    double b = 2.2;

    double c = 3.3;

    printf("%s", (a + b) == c ? "true" : "false");

    return 0;

}



produce "false".



Allora stampiamo il layout di memoria di quei double:



#include <stdio.h>

#include <stdlib.h>



void print_double_bytes(double d) {

  unsigned char *p = (unsigned char*)&d;

  for (size_t i=0; i<sizeof d; i++) {

    printf("%.2x", p[i]);

  }

  printf("\n");

}



int main() {

    double a = 1.1;

    double b = 2.2;

    double c = 3.3;



    print_double_bytes(a);

    print_double_bytes(b);

    print_double_bytes(a+b);

    print_double_bytes(c);



    return 0;

}



Otteniamo: 



9a9999999999f13f

9a99999999990140

6766666666660a40

6666666666660a40



Da notare che la differenza tra a+b a 3.3 si vede gia` da qui.



L'endianess della mia piattaforma e` tale che, per avere il layout come da IEEE 754 (sign + exponent + fraction) bisogna invertire i byte:



(a=1.1) 3ff199999999999a (layout IEEE 754: 0 01111111111 0001100110011001100110011001100110011001100110011010)



(b=2.2) 400199999999999a (0 10000000000 0001100110011001100110011001100110011001100110011010)



(a+b)   400a666666666667 (0 10000000000 1010011001100110011001100110011001100110011001100111)



(c=3.3) 400a666666666666 (0 10000000000 1010011001100110011001100110011001100110011001100110)



Ora basta calcolare secondo il layout IEEE 754: 



(a=1.1): 

Exponent = 3ff(16) = 1023(10)

Fraction = 199999999999a(16)

Risultato = 2^(Exponent - 1023) x 1.Fraction 

          = 2^0 x 1199999999999a(16) x 2^-52 

          = 4953959590107546 x 2^-52

          = 1.100000000000000088818



(b=2.2):

Exponent = 400(16) = 1024(10)

Fraction = 199999999999a(16)

Risultato = 2^1 x 1199999999999a(16) x 2^-52 

          = 4953959590107546 x 2^51

          = 2.200000000000000177636



(a+b):

Exponent = 400(16) = 1024(10) 

Fraction = a666666666667(16)

Risultato = 2^1 x 1a666666666667(16) x 2^-52

          = 7430939385161319 x 2^(-51)

          = 3.300000000000000266454



(c=3.3):

Exponent = 400(16) = 1024(10)

Fraction = a666666666666(16)

Risultato = 2^1 x 1a666666666666 x 2^-52

          = 7430939385161318 x 2^(-51)

          = 3.299999999999999822364


 



Non  mi sento umiliato,semplicemente e' ora di mettere le cose in chiaro

Mi sto rompendo le palle di essere diffamato.






 questo campo ?



Si`. Esistono dei post qui dentro in cui ammetti di non sapere cosa significhi "precisione multipla", come esistono post in cui ammetti di usare floating point per eseguire calcoli dove e` richiesta la precisione multipla (e.g. finanziari, militari, etc..).

Calcoli che, bada bene, in molti casi possono risultare mortali (come nel caso del campo medico o militare). Quindi non sei solo incompetente; sei potenzialmente pericoloso.



Sei partito dal voler confrontare BigDecimal con un'implementazione specifica C++ senza neanche sapere cosa significhi quel "mp". Nel goffo tentativo di difendere gli strafalcioni che fai, inciampi, cadi, e vieni fuori con strafalcioni ancora piu` grandi che, uno alla volta, rivelano la tua scarsa competenza nel campo della programmazione.  Quando qualcuno ribatte alle sciocchezze che scrivi, e dalle quali si evince che sei un incompetente, non ti sta diffamando.



Sogni fazioni nemiche che ce l'hanno con te e che vogliono infangare il tuo nome anonimo. Ma quanta fatica fai? Accetta il fatto che sei un ignorante in materia. D'altronde, tutto e` recuperabile (meno che la stupidita`): basta studiare.


Il 03/02/19 08:03, 4ndre4 ha scritto:


Ma sei veramente bravo (ironico ovviamente)

Se l'avesse fatto il sottoscritto chissa quali puttanate ti saresti 

inventato pur di diffamarlo.

Ma non preoccuparti,io non scendo a simili livelli di bestialita

Solo un appunto,gia che c'eri potevi fare delle routine per stampare 

Exponent,ecc.

Chissa quanto hai lavorato a manina (poverino) per farci vedere queste 

cosette.

Almeno,sempre che tu non lo abbia copiato da qualche parte,hai fatto 

vedere che qualcosa di C conosci.

Non tanto,lo so,solo qualcosa di rudimentale che gia al primo anno di 

universita si insegna, ma e' qualcosa.

PS: non so come sia l'universita di oggi ma ai miei tempi tra i primi 

esami che si sostenevano era proprio la struttura dell'hw

CPU,microcodice,CISC,RISC,IO,clock,formati numerici,ecc.. con pratica in C.

Ricordo che costruii su una macchina RISC l'emulatore di un processore 

da apposito microcodice.

Esame passato a pieni voti.








Il 03/02/19 06:59, 4ndre4 ha scritto:


Che fai ti contraddici ?

Prima affermi che sparo puttanate e poi affermi che java e' il best 

performance ?






Il 03/02/19 06:54, 4ndre4 ha scritto:


I miei benchmark se fossero fallati mi devi dire dove sono 

fallati,programma per programma.

Ora,le poche volte che qualcuno (che non sei tu) mi ha fatto degli 

appunti io ho aggiustato di conseguenza,proprio per essere imparziale il 

piu possibile.

Finora altre critiche non ne ho ricevute,quindi fino a prova contraria, 

quei benchmarks dimostrano che il tuo java best not plus ultra non e' 

proprio cosi.






 Esame passato a pieni voti



Si`, si`, certo. Io ricordo quando frequentavo il corso di Fisica con Feynman. Un simpaticone. Le risate.




Il 03/02/19 06:51, 4ndre4 ha scritto:


Codice che ovviamente non hai provato.

Io la classe l'ho fatta veramente visto che ti ho postato uno stralcio e 

per la connessione non e' certamente composta da due righe come hai 

scritto tu.

Quindi la prossima volta prima di diffamare pensaci due volte.

Io so che sei,ma tu non sai chi sono io.

Potrei agire in molti modi,ma sinceramente sarebbe solo tempo perso con 

un moscerino




 performance ?



Cosa non ti e` chiaro dopo il "Ti e` stato solo detto" ?




 tu non sai chi sono io.



LOL :)


Il 03/02/19 06:53, 4ndre4 ha scritto:


Un conto e' non  conoscere o non ricordare un termine,un altro e' il 

concetto.

Tu su questo fai lo gnorri in quanto il tuo unico scopo e' la diffamazione.




 fallati,programma per programma.



I tuoi esercizietti stupidi (ancora una volta, NON sono benchmarks) hanno due difetti che li invalidano del tutto: 



1) pretendono di confrontare due linguaggi non confrontabili, peraltro in condizioni impari; 

2) sono scritti da una persona che nutre un pregiudizio di fondo per uno dei due linguaggi;



Inoltre, come dettoti molte volte, il risultato di quei benchmark non ha nessun valore. 




 concetto.



Appunto. Tu non lo conosci. Non e` che non lo ricordi.


Il 03/02/19 09:07, 4ndre4 ha scritto:


Appunto,mi e' stato detto

Quindi qualcuno lo ha affermato

E fino a qui penso che il tuo cervellino ci arrivi

Ma se mi e' stato detto allora non ho mentito,quindi non e' una mia 

fantasia.

Ti contraddici persino nella stessa frase.






Il 03/02/19 09:14, 4ndre4 ha scritto:


Evidentemente ti piace sbattere la testa contro i muri.

Devi prendere programma per programma e spiegare, non so che farmene 

delle tue spiegazioni campate in aria.




 Io non ti spiego un cazzo.

CVD



Io non sono e forse non ci tengo ad essere un Computer Scientist.

Che un cazzo di numero periodico lo e' in tutte le basi non riguarda

i /compiuter/ che qualcuno defini' a suo tempo dei deficienti ad alta 

velocita'.



Non ti agitare ti potrebbe venire il coccolone.

Sarebbe  una perdita importante per i Computer's Scientists e per i 

Computers.





-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


Il 03/02/19 09:10, 4ndre4 ha scritto:


Ovviamente,secondo i tuoi parametri,il sottoscritto scrive programmi 

usando un bigdecimal che non sa a cosa serva e scrive una classe per la 

connessione ad oracle senza sapere usare le OCI.

Devo avere le dita miracolose per poter fare queste cose.

Io una persona del genere,che mi scrive programmi per via miracolosa la 

assumerei subito.

Potrei chiedergli di farmi chissa quale sw abbastanza complesso che la 

scienza attuale non ne e' venuta a capo.

In fondo di misteri della natura e matematici di qui non si sa la 

soluzione o la dimostrazione ce ne sono ancora.




 



Ma bravo,adesso metti pure in discussione i miei studi informatici.

Se questa non e' diffamazione allora chissa cosa e'

E tu cosa hai fatto  tra i primi esami all'universita ?

O facevi il lavapiatti in qualche bar di Londra mentre il sottoscritto 

andava beato beato all' universita ?




 



Se c'e' un  problema e' il tuo. Ti sono vicino.

Ora mi faccio un caffe'.

E' gia' macinato. Speriamo bene.



 



Centra,in quanto viene minata

E solo per quel programma,tanto per non dare adito a fraintendimenti 

(per l'ennesima volta) su cui poi fai nascere polemiche il cui unico 

scopo e' la diffamazione.

Diffamazione (Treccani)



Diffamazióne s. f. [dal lat. tardo diffamatio -onis]. – Il fatto, 

l’opera di diffamare: ricorrere alla d. per mettere in cattiva luce un 

avversario, un rivale; essere oggetto di una campagna di diffamazione. 

In partic., sotto l’aspetto giuridico, reato consistente nel recare 

offesa all’altrui reputazione comunicando a due o più persone, a voce o 

per iscritto, e fuori della presenza della persona offesa, oppure 

diffondendo, per mezzo della stampa, notizie di fatti che possano 

comunque ledere o diminuire la stima morale o intellettuale o 

professionale che la persona gode nell’ambiente in cui vive: dare 

querela per diffamazione.





Tanto per essere chiari almeno ora puoi leggere cosa e' la diffamazione.






 



Ma tu comprendi gli scritti ?




 



Lo so,per questo ho voluto mettere in chiaro




 



Puoi girare la frittata come vuoi (ma ti vengono bene almeno?)

ma non hai risposto alla domanda.


 Ti contraddici persino nella stessa frase.



Si`, eh?


 Devi prendere programma per programma e spiegare



Non ci penso neanche. Quando e` il principio di fondo agli esercizietti, ad essere fallato, che senso ha valutare i singoli esercizietti? 


 Che un cazzo di numero periodico lo e' in tutte le basi 



...non e` quello di cui parlava rootkit. 



Tranquillo, non ho mai neanche pensato che tu andassi veramente a cercare quel paper e leggertelo. D'altronde, non saresti neanche capace di capirne il significato. E` che chiedevi di spiegarti cosa mai avesse scritto rootkit, e la risposta e` in quel paper.


 assumerei subito.



Non ci crederai, ma pensare che il proprio software funzioni per miracolo e` un'assunzione piu` comune di quanto tu creda. D'altronde, se ti chiedessi qual e` il threshold minimo di unit-test coverage nei programmelli che scrivi, cosa mi rispondi?


 Ma bravo,adesso metti pure in discussione i miei studi informatici.



Veramente a me sorprende che ti abbiano persino preso, all'universita`.


 Se c'e' un  problema e' il tuo. 



Dici, eh? Bravo, va`, fatti il caffe`.


 E solo per quel programma



Non e` la portabilita` di Java come linguaggio, ad essere minata. Vedi di darci un taglio.


 Ma tu comprendi gli scritti ?



Io si`, tu? 


 Dietro un nick ci sta una persona



Vedi di darti un taglio e comincia a scrivere cose sensate, se non vuoi che ti vengano rinfacciate le stupidaggini che scrivi.


 Mi sto rompendo le palle di essere diffamato.



dai che ti piace stare al centro della scena. per quale altro motivo ti 

metteresti alla berlina in questo modo?


Il 03/02/19 11:21, 4ndre4 ha scritto:


Mi sai che allora i post non li leggi bene

Quanfo mai ho scritto che la portabilita di java (come linguaggio 

generale) viene compromessa.




Il 03/02/19 11:09, 4ndre4 ha scritto:


Allora zitto




 



Non era a numero chiuso


 generale) viene compromessa.



Quando hai puntato il dito contro il principio "write once, run everywhere". Si applica a Java, in generale, e non e` affatto minato, inficiato, e tantomeno va a farsi benedire perche` uno sviluppatore decide di usare una determinata libreria specifica della piattaforma. E dire che potresti uscire da questo loop infinito semplicemente ammettendo di aver scritto una stupidaggine. Invece insisti.




 Allora zitto



Ma nemmeno per sogno. Non sei tu che detti le regole. Continuero` a risponderti e a rinfacciarti l'inutilita` dei tuoi esercizi, fino a quando continuerai a farli sulla base di tale fallacia. 


 Non era a numero chiuso



Chissa` che contenti che devono essere, oggi, i tuoi professori. Hanno sfornato un campione. 




Il 03/02/19 14:14, 4ndre4 ha scritto:


dimostra la fallacia,altrimenti fuori dalle scatole




Il 03/02/19 14:13, 4ndre4 ha scritto:


E ci risiamo




 



Puoi pensarla come vuoi

Comunque:

i`, si`, certo. Io ricordo quando frequentavo il corso di Fisica con 

Feynman. Un simpaticone. Le risate.





Non l'ho scritta io




 



Alla grande

E continua a tagliare a tuo uso e consumo


 dimostra la fallacia,altrimenti fuori dalle scatole



LOL :) Senno` che fai, mi cacci dal newsgroup? :) Ti ho gia` spiegato dov'e` la fallacia dei tuoi esercizietti. Leggi, altrimenti fuori dalle scatole. Vedi di darci un taglio, perche` hai passato il limite del ridicolo da un pezzo.


 E ci risiamo



Eh si`. 


 Non l'ho scritta io



Perche`, visto quello che scrivi, ti meravigli che qualcuno si meravigli che hai studiato informatica all'universita`? 


 E continua a tagliare a tuo uso e consumo



Si`, eh?


Il 03/02/19 16:57, 4ndre4 ha scritto:


Non ci arrivi proprio

Se mi e' stato detto perche dovrebbe essere una mia fantasia ?



 Se mi e' stato detto perche dovrebbe essere una mia fantasia ?



Ti e` stata detta una cosa - ne hai capita un'altra. 

Adesso dacci un taglio che avresti un tantino rotto i coglioni. 


 

Alla domanda si potrebbe rispondere se si sottintende l'utilizzo di Java 

e un driver Jdbc, incapsulato o meno da un ORM, e le tabelle del nuovo 

db siano piu' o meno corrispondenti (almeno i nomi delle colonne).

In tal caso la risposta e' no, non devo utilizzare classi differenti, 

utilizzo le stesse.

Vuoi sapere come faccio io? In genere metto i parametri del db in un 

file di configurazione, all'occorrenza modifico il file di 

configurazione e nell'applicazione non cambio proprio niente.

Piu' o meno come faresti con ODBC, cambiando da qualche parte il nome 

del DSN.




 Io so che sei,ma tu non sai chi sono io.



Non lo sentivo dire dagli anni '80







-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.


 configurazione e nell'applicazione non cambio proprio niente.



Che poi e` quel che si fa con Spring Boot, ad esempio, andando a toccare application.properties. Anche non usando un ORM, avresti CrudRepository di Spring Data che ti consentono di fare quello che vuoi, senza scrivere una riga di codice. Puoi persino ritornare oggetti DTO dai metodi e costuirli nel JPQL.


 Non lo sentivo dire dagli anni '80



Io credo d'averlo sentito, l'ultima volta, ne Il Marchese del Grillo




 

Se tu dici che non sai cosa significa 'precisione multipla', e poi usi 

la libreria GMP nel cui acronimo quel 'MP' significa 'Multiple 

Precision', ovvero proprio 'precisione multipla' in italiano, mi sembra 

ovvio che hai utilizzato la libreria GMP senza sapere a che serve.

E' questa la vera quotidianita': che trolli o spari cazzate.


 



Pure dislessico. La natura ti ha voluto male, mi spiace.



 

Scusa se mi permetto, rootkit stava comparando la tua ignoranza a quella 

del sottosegretario al ministero dell'economia On. Laura Castelli. Una 

bella gara.



 dimostrando che non vale niente per cui i benchmark non valgono niente.



Forse fraintendi anche il termine 'diffamazione' che indicherebbe 

un'affermazione falsa allo scopo di detrazione. In questo caso c'e' solo 

la detrazione, mancando la falsita' non si puo' parlare di diffamazione.






 concetto.



Veramente hai sostenuto sia che non conosci e che hai frainteso il 

significato di 'precisione multipla', ora cerchi di ribaltare la 

frittata dicendo di non ricordare?


 Gia', ma chi ha frainteso sei proprio tu.



Effettivamente avevo scritto "precisione mobile", ma era evidentemente un lapsus. Era "precisione multipla". Poi lui, ovviamente, cavalca la cosa facendo lo gnorri: Precisione mobile? Cos'e`? E io: guarda che intendo precisione multipla. Eh, ma precisione mobile non so cosa sia... Guarda che intendo PRECISIONE MULTIPLA... eh ma precisione mobile cosa sarebbe? etc... etc...



D'altronde, per il suo "benchmark", avra` sicuramente googlato 
https://stackoverflow.com/questions/4798777/is-there-a-c-equivalent-to-javas-bigdecimal




E da buon programmatore copy&paste si e` affidato alla prima risposta.


 lo sa

Appunto, in COBOL PIC o PICTURE [IS] serve proprio a definire un numero 

con  determinate precisione e scala: ovvero un numero a 'precisione 

arbitraria', sinonimo di 'precisione multipla'; che corrisponde al tipo 

sql numeric(precisione, scala), non sempre rappresentabile con un tipo 

floating point, soprattutto se la precisione e' maggiore del numero di 

digit rappresentabile da un floating point.

Inoltre in ambito finanziario difficilmente, se non mai, si usano float 

o double.




 Aldo, manco le basi! (cit.)



Mi su la boca non te baso. (cit.)





Eh no, nel Marchese del Grillo il concetto era diverso...."io so' io e 

voi nun siete n'cazzo"

;o)



 



Qualsiasi tesi e' falsa se basata su ipotesi false, conseguentemente i 

risultati sono falsi. Ti e' gia' stato detto piu' e piu' volte.


 

Ti diro', anch'io subito avevo pensato al CST, ma poi ho pensato a 

qualche paese centroamericano o a qualche isola del pacifico un po' 

fuori dal mondo: galapagos?


 compatibilita con c



Guarda che la domanda era 'in modo nativo', e tu rispondi 'idem' citando 

una libreria non standard scritta, tra l'altro, in un linguaggio diverso?

Sei buffo sai?


 La tua si chiama diffamazione,ed e' perseguibile per legge.



Di quale legge stai parlando? Quella italiana?

Forse dovresti fare riferimento alla legge UTC-6, che comunque non penso 

definisca come diffamazione un' affermazione supportata da fatti non falsi.





Ovviamente. Io uso sia l'uno che l'altro, ma la cosa non cambia, si 

modifica il file application.properties in ogni caso anche senza spring 

e orm.


 

Sbagliato. "Li soprani der monno vecchio", G.G.Belli:

'Io sò io, e vvoi nun zete un cazzo'

ripresa dal nostro compianto Albertone.

:-)



Così imparo a non citare "a braccio" ! ;o)




si sente diffamato perché gli ho detto, anzi chiesto, se si aspettava i BigDecimal fossero

tipi primitivi, visto che si era sorpreso di trovarli implementati nella libreria standard.

poi si sente deriso perché ho spiegato il motivo per cui esistono i tipi decimal nei

principali linguaggi. 

insomma, la solita storia: simula un attacco personale, un malore, un fallo, qualsiasi cosa

pur di non rispondere nel merito della discussione.


 :-)



Avete ragione entrambi. Pero`, per favore, non diffamate enoquick. Lui ha passato gli esami universitari a pieni voti. Peccato per quel TIR che lo ha centrato in pieno il giorno della laurea e gli ha fatto dimenticare tutto.



E sul "tu non sai chi sono io" si potrebbero citare molte barzellette. Per esempio, la sapete quella di enoquick che appare alla finestra con Papa Francesco e uno della folla chiede "Aho` ma chi e` quello vestito di bianco vicino a enoquick?"





Sembra quel pugile che dopo aver preso gran quantità di legnate chiede 

al "secondo": ...come sto andando?

il secondo: se lo ammazzi fai pari!



 il secondo: se lo ammazzi fai pari!



Io sapevo quella del pugile che torna tutto pesto dagli amici che gli fanno: aho`, allora com'e` andata? E lui: l'ho fatto caga` sotto! Ad un certo punto, se credeva che ero morto!



Beh, tutte le barzellette sui carabinieri si potrebbero migrare in tal 

senso, con un refactoring neanche troppo complesso.

Ad esempio:

D: perche' enoquick non puo' cambiare la lampadina?

R: perche' ce ne vogliono due, uno che tiene la lampadina in piedi su 

uno sgabello ed un altro che gira lo sgabello.



:-D


 



peccato che il significato sia differente

E' inteso che so (nel senso di cognome/nome) chi e'

ma lui non conosce me,solo il mio nick.

Non era certo inteso al 'tu non sai chi sono io' di italica arroganza 

dei vecchi tempi.




Il 04/02/19 04:01, 4ndre4 ha scritto:


Con il piffero

Se avessi attinto da fonti esterne lo avrei scritto.

Pur di sputtanare scriveresti di tutto.




Il 04/02/19 03:32, Dr.UgoGagliardelli ha scritto:


Una dimenticanza od un lapsus non possono accadere ?

A dei robot perfetti come siete voi sicuramente no

Scusatemi se sono solo un imperfetto umano.

E la cosa veramente bella e' che continuano ad insistere con queste 

cazzate,tanto basta spalare merda su enoquick.




 Con il piffero



E` esattamente con quello che scrivi i tuoi post.


 uno sgabello ed un altro che gira lo sgabello.



Ah be`, certo. Per esempio: ci sono un italiano, un tedesco, un francese ed enoquick che vanno nel deserto. Il francese dice: "noi abbiamo in francia i fiori più belli" e l'italiano e l'inglese: "e noi ci cagheremo sopra" dopo l'inglese dice: "noi in Inghilterra abbiamo le rose più belle" e il francese e l'italiano: "e noi ci cagheremo sopra", l'italiano dice noi: "in italia abbiamo i cactus più belli" e il francese e l'inglese: "e noi ci cagheremo sopra", allora enoquick dice "Java fa cagare!"


 cazzate,tanto basta spalare merda su enoquick.



https://www.youtube.com/watch?v=ipMTemyULYA







 



Perfetto,hai spiegato in modo impeccabile

Ma ora vorrei un'altra risposta

Perche per fare la stessa cosa in c++ dovrei cambiare classi ?




Il 04/02/19 13:31, 4ndre4 ha scritto:


FACK YOU




Il 04/02/19 13:38, 4ndre4 ha scritto:


FACK YOU




 



FACK YOU




 



FACK YOU




 



FACK YOU




 FACK YOU



"FACK 

the act of having a woman make you cum numerous amounts of times, usually with the presence of a tube with a gerbil in your colon. it must be nibbling on your asshole for ultimate effect."



https://www.urbandictionary.com/define.php?term=fack




Hummm.... interessante - ci provero`! Grazie del consiglio.


 FACK YOU



Non sei manco capace di mandare a fanculo :D ROTFL :)




 





-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Tu che lo hai letto e capito spiegamelo con parole tue da /maestro/



Non posso. Non sei ancora pronto.


Il 04/02/2019 21:08, 4ndre4 ha scritto:


https://it.wikisource.org/wiki/Sonetti_romaneschi/A_Teta_I




On Monday, 4 February 2019 20:14:36 UTC, Alessandro Cara  wrote:



[...]



https://www.youtube.com/watch?v=tIgncYGvcDE



 FACK YOU



ma rotfl!





I tuoi gia' risponditori sono /intellighenzia/

Io mi permetto di ricordarti che si scrive Fuck

o se si e' /colti/ Frak!

Fack mai! al massimo facchiu', questo e' solo per cultori

della lingua.




ecco, dai e dai l'avete rotto :-)



I tuoi link non li guardo non sono mai attinenti.

Come le tue risposte a qualsiasi quesito.

Esso sia: ma sei deficiente? ma sei intelligente?

Sei forse /Quelo/ in trasferta?

Con te la soluzione ultima e' lo sciampo!

Ahhhhhh!

Mi rifaccio un caffe' gia' macinato!



 Mi rifaccio un caffe' gia' macinato!



Beato te, che non hai mai un cazzo da fare. D'altronde, chi sarebbe cosi` scemo da darti qualcosa d fare?


 Beato te, che non hai mai un cazzo da fare. D'altronde, chi sarebbe cosi` scemo da darti qualcosa d fare?



Me lo hanno offerto.

Ma si era /vestito/ da pazzo l'ultima volta che lo ho visto!



Preferisco andare a guardare i cantieri sono piu' interessanti!

Ovviamente dopo questo NG.

In fondo sei imperdibile!

Ho ripetuto la /metafora/ del caffe'mmacinato.

Non farmi essere volgare accomunando culo e cervello!



 Scegli qualsiasi cosa a caso!



Cioe`?


 Sei buffo sai?



Essere "buffi" e' un complimento!

Come diceva qualcuno, darei la vita per essere *sempre* buffo



 



U n a   q u a l s i a s i   c o s a    a   c a s o !

5 parole brevi senza se... e senza ma...



 



Mi permetti di darti un consiglio?

Con Andrea LaForgia (?) mai dargli spago.

Non e' con non capisca ma il suo essere e' /negativo/.

Menalo sempre e comunque e', in fondo, un masochista!

Menalo sempre e comunque. Anche nei rari casi in cui e' nel

giusto,  ne godra' oltre ogni limite!



Il 26/01/2019 16:12, enoquick ha scritto:

Complimenti!

Questo 3D potrebbe essere uno dei record!

Non importa se tutto e' attinente.

Un record e' un record!

Per scorrerlo la rotellina del mio /maus/ ha chiesto pieta'!



 il corso di Fisica con Feynman. Un simpaticone. Le risate.



Ma poi quella storia che il tempo puo' andare al contrario la ha 

spiegata (*)?



Per /un/ tizio che circola da queste parti, la cosa e' in QED.



[...]

Non ti eccitare, Sandrina. È una delle poche volte che ti verrà data così ta ta attenzione ;)


[...]

Ed è lì che posso travare la Cara Sandrina: in fondo a thread lunghissimi, diventati ormai binari morti :)


 Non e' con non capisca ma il suo essere e' /negativo/.



Dici, eh? :)


 U n a   q u a l s i a s i   c o s a    a   c a s o !



Cioe`?


 

Ne aveva tutto l'apetto.



-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.


 cazzate,tanto basta spalare merda su enoquick.



Purtroppo non sembra proprio che basti.


 Perche per fare la stessa cosa in c++ dovrei cambiare classi ?



Ho detto questo? Sono sicuro di non aver citato questo argomento. Tra 

l'altro l'esempio 'come faccio io' non indica il linguaggio, proprio 

perche' per me e' una prassi con qualsiasi linguaggio, se si parla di 

accessi via sql.

Parimenti, se utilizzi un'interfaccia standard, come ODBC, probabilmente 

non ne avresti bisogno.

Ma se usi OCI, o le 'classi per la conversione dei tipi' mi sa proprio 

di si'.


On Tuesday, 5 February 2019 10:42:14 UTC, Dr.UgoGagliardelli  wrote:



[...]

Da notare la piega del tutto paradossale che ha preso questo ramo del thread, grazie al suo continuo costruire argomenti fantoccio da attaccare.

Si e` partiti chiedendosi che senso avrebbe crearsi le propri classi di accesso ai dati, visto che qualunque DB fornisce API di alto livello, e come esempio, si forniscono le OCCI di Oracle. Lui ignora del tutto il fatto che Oracle viene citato come esempio e comincia a martellare "e se cambio DB? E se non uso solo Oracle?". E allora gli si risponde che, nei casi in cui si vuole il crossdb, molto probabilmente si ricorrera` ad un approccio serio, vedi un ORM. E lui: e se non mi serve un ORM? E gli si risponde che, in contesti seri, l'ORM serve e viene usato. E lui: eh, ma cosa impedisce a me, nel mio package di classi personalizzato, di fare la stessa cosa? E allora l'unica risposta possibile e` una martellata sulle gengive.



Vedrai che se ne uscira' con un 'benchmark' a proposito. Speriamo che 

banalmente sortisca con un bel 'fake off'! :-)



Te l'avevo detto che e' UTC-6 ma a sud del tropico del cancro. Oppure e' 

banalmente dislessico o tutt'e due.

Vedrai che, dopo aver scritto 'FACK YOU' decine di volte, dira' che si 

tratta di un lapsus o dimenticanza ma non ammettera' mai di essersi 

sbagliato.


 the act of having a woman make you cum numerous amounts of times, usually with the presence of a tube with a gerbil in your colon. it must be nibbling on your asshole for ultimate effect."



Ma poveri gerbilli! Pensa se comincia ad infilarseli!

:-D






Il 05/02/19 04:41, Dr.UgoGagliardelli ha scritto:


Non sei stato tu ad avere l' idea della classe OCI++

Hai solo risposto




 



NO,bastava capire il contesto della frase nella sua interezza.




Il 05/02/19 10:12, Dr.UgoGagliardelli ha scritto:


Da google translate:

fack you  -> fottiti




 



mke2fs andrea






 



mke2fs andrea




 





mke2fs andrea


 



mke2fs andrea


 

mke2fs andrea


 Eh, cosa vuoi, lui vive all'estero. Non ha dimestichezza con le metafore.



FACK YOU






 



mke2fs andrea


 



mke2fs ?




 



Ho cercato di avere discussioni civili con tutti

E' andata male

Un bel mke2fs per chi "mi vuole bene"




 fack you  -> fottiti



CIoe`, per scrivere una cosa del genere, hai bisogno di Google Translate? :)


 Un bel mke2fs per chi "mi vuole bene"



Che tu stessi male era evidente. Cosi` tanto, chi se lo immaginava? 




 non ammettera' mai di essersi sbagliato.



Ovvio che no. E dire che gia` a giugno 2017, scriveva  "Un confronto C++ vs java avrebbe senso invece" e gli rispondevo "Ma neanche per sogno. E` quel che fanno i "language jihadists" come te, per citare David West. Considerare i punti di forza e di debolezza del core di un linguaggio rispetto ad un altro linguaggio non ha alcun senso quando i motivi alla base della loro progettazione sono DIVERSI. Se ci aggiungessi tutto l'ecosistema, poi, C++ rispetto a Java ne uscirebbe fortemente bastonato. Prova a recuperare in giro librerie C++ portabili e open source che ti consentano di implementare qualcosa di simile a JEE. In bocca al lupo. E bada che l'impossibilita` di trovarne non e` necessariamente un difetto del C++. Lo diventa, quando imbecilli come te si mettono in testa dei confronti."



All'epoca si era messo in testa di confrontare COBOL e C++, scrivendo "C++ si mangia il COBOL". 




 mke2fs per chi "mi vuole bene"



"addio merdaiolo, ci si vede domani a mezzogiorno al solito posto!"

"no, alla mezza! a mezzogiorno ho un pignoramento!"



(e crepi chi non coglie la citazione)


 attaccare.



ma perché gli altri thread? è un menatore professionista di can per l'aia.



Vero.



Le classi OCI sono state citate come risposta alla tua specifica domanda 

"Quali api ha oracle di alto livello?" il "Date: 2019-01-30 13:52:03 S" 

ovvero "Injection-Date: 2019-01-30 19:52:03 Z" ora locale 20:52:03.



Le infauste "classi per la conversione dei tipi" invece, sono farina del 

tuo sacco, l'hai detto tu: "Io uso delle classi nel namespace data fatte 

da me" il "Date: 2019-01-28 15:41:37 S", ovvero "Injection-Date: 

2019-01-28 21:41:39 Z" ora locale 22:41:39.



L'onere della comunicazione, quindi della chiarezza e degli intenti, e' 

sempre di chi parla, non di chi ascolta.



Solo in google translate e nella canzone di Eminem.

Sta a vedere che era una 'dotta citazione' e non un lapsus o dimenticanza!

"Shove a gerbil in your ass through a tube" [cit.] e' questo che intendevi?




 sempre di chi parla, non di chi ascolta.



Non e` un concetto a cui e` abituato. Uno che ti dice: "dimostrami il contrario di quel che ho detto". 




 2019-01-28 21:41:39 Z" ora locale 22:41:39.



A parte il fatto che non sono infauste esiste una sola classe per le 

conversioni dei tipi

Da variant a T


 Infatti,ed e' dipendente da oracle Quindi no buono



imbarazzante.


Ammazza che off topic.



Ma ritornando in topic, sicuro che Java non sia adatto a calcolare le centomillesime cifre decimali di un numero?



La pagina 
http://it.wikipedia.org/wiki/Pi_greco_(prime_100.000_cifre)


può essere riprodotta in meno di dieci secondi con un intel 4 core 3.2 Ghz, senza usare librerie esterne



  import java.math.*;



  public final class Pi {   

  private static final BigDecimal BD_2 = new BigDecimal("2");

  private static final BigDecimal BD_3 = new BigDecimal("3");

  private static final BigDecimal BD_4 = new BigDecimal("4");

  private static final BigDecimal BD_5 = new BigDecimal("5");

  private static final BigDecimal BD_12 = new BigDecimal("12");

  private static final BigDecimal BD_32 = new BigDecimal("32");    

  private static final BigDecimal BD_49 = new BigDecimal("49");  

  private static final BigDecimal BD_57 = new BigDecimal("57");   

  private static final BigDecimal BD_239 = new BigDecimal("239");

  private static final BigDecimal BD_110443 = new BigDecimal("110443");  



  private static BigDecimal alpha;

  private static BigDecimal beta;

  private static BigDecimal gamma;

  private static BigDecimal delta;  



  private static class arccotRunnable implements Runnable {

        BigDecimal x;

        int numDigits;

        int angle;



        private arccotRunnable(BigDecimal x_in, int numDigits_in, int angle_in){

            x = x_in; numDigits = numDigits_in; angle = angle_in;

        }

        @Override

        public void run(){

            BigDecimal unity = BigDecimal.ONE.setScale(numDigits, RoundingMode.DOWN);

            BigDecimal sum = unity.divide(x, RoundingMode.DOWN);

            BigDecimal xpower = new BigDecimal(sum.toString());

            BigDecimal term = null;



            BigDecimal nearZero = BigDecimal.ONE.scaleByPowerOfTen(-numDigits);

            boolean add = false; 

            for (BigDecimal n = BD_3; term == null || !term.equals(BigDecimal.ZERO); n = n.add(BD_2)) {

              if (term != null && term.compareTo(nearZero) < 0) break;

              xpower = xpower.divide(x.pow(2), RoundingMode.DOWN);

              term = xpower.divide(n, RoundingMode.DOWN);

              sum = add ? sum.add(term) : sum.subtract(term);

              add = !add;

            }

            if(angle == 3)

                delta = BD_12.multiply(sum);

            if(angle == 2)

                gamma = BD_5.multiply(sum);

            if(angle == 1)

                beta = BD_32.multiply(sum);               

            else

                alpha = BD_12.multiply(sum);

        }

  }



  public static void main(String args[]) throws InterruptedException {

    final int digits = Integer.parseInt(args[0]);

    final boolean isprint = Integer.parseInt(args[1]) != 0;

    final int calcDigits = digits + 10;



    Thread t0 = new Thread(new arccotRunnable(BD_49, calcDigits, 0));

    Thread t1 = new Thread(new arccotRunnable(BD_57, calcDigits, 1));

    Thread t2 = new Thread(new arccotRunnable(BD_239, calcDigits, 2));

    Thread t3 = new Thread(new arccotRunnable(BD_110443, calcDigits, 3));   

    t0.start();

    t1.start();

    t2.start();

    t3.start();     

    t0.join();

    t1.join(); 

    t2.join();

    t3.join();    

    BigDecimal pi =  BD_4.multiply(alpha.add(beta).subtract(gamma).add(delta))

                        .setScale(digits, RoundingMode.DOWN);



    if(isprint){

        String pi_str = pi.toString(); 

        System.out.println("3.");

        int j = 10;

        for(;j < digits; j += 10){

            System.out.print(pi_str.substring(j - 8, j + 2));

            if(j % 180 == 0)

                System.out.println();

            else

                System.out.print(" ");

        } 

        j -= 10;

        if(j < digits)

           System.out.print(pi_str.substring(j + 2, digits + 2));

    }

  }

}


 Ma ritornando in topic, sicuro che Java non sia adatto a calcolare le centomillesime cifre decimali di un numero?



E' ovvio ed evidente che lo si puo' fare. Ma che senso ha fare un 

confronto sul linguaggio in se?

Ed e' altrettanto ovvio che, qualora si rendano necessarie performance 

che le classi del JDK non ti possono dare, si possono usare librerie 

esterne come per qualsiasi altro linguaggio.



Sono d'accordo al 100%



Aspettavo il suo punto di vista per curiosità, visto che comunque con Java si ottengono risultati ottimi senza librerie 



Con 'infauste' mi riferivo al fatto che se 'variant' contiene un dato 

numerico con precisione che supera i limiti delle variabili numeriche 

supportate da c++, con il tuo T non ci fai i conti, ed inoltre nulla 

dicono rispetto all'ipotesi del cambio di database.




 Ma ritornando in topic, sicuro che Java non sia adatto a calcolare le centomillesime cifre decimali di un numero?



Anche se fosse inadatto, e si avesse davvero la necessita` di compiere un calcolo del genere (ci sono  infatti essere innumerevoli ambiti in cui potrebbe servire), si ricorrerebbe ad una libreria ottimizzata (magari proprio gmplib). Da Java. Non riscrivendo tutto in C++.



Quel che questa persona non capisce neanche se uno gli fa dei geroglifici alti quanto una casa, e` che confronti come i suoi non servono assolutamente a niente, perche` nessuno si fa niente del risultato di quei confronti. 



Sicuramente BigDecimal non era pensato, nella testa dei progettisti, per essere superottimizzato (avrebbero scritto il core in C, come per altri metodi di libreria standard). E` validissimo per coprire una stragrande maggioranza di casi (vedi calcoli finanziari in applicazioni enterprise). E tanto basta.



D'altronde, da un "language jihadist" come lui, che non ha nessuna esperienza di sviluppo di applicazioni enterprise, non mi aspetto che capisca il concetto.


 dicono rispetto all'ipotesi del cambio di database.



Come, non hai capito? Lui usa i double per i calcoli! Fa niente che poi il totale generale gli viene sballato di qualche decina di euro. D'altronde, lui ha usato il COBOL, vuoi che non sappia di questi problemi? Pero` usa i double.



il suo punto di vista è abbastanza primitivo e si può riassumere in 

quattro parole: java è una merda. è partito tutto da questa affermazione 

condivisa con il suo amico, è stato il tormentone di questi ultimi mesi e 

il suo chiodo fisso dimostrarlo.


 Cara Sandrina



Alle elementari sapevano fare di meglio.

Ma stai migliorando, chissa'..... domani!

Mi diverte questo tuo velato /sessismo/ .

Ripeto, alle elementari, erano molto, ma molto, ma molto

piu' evoluti.



"Ed è lì che posso travare"

Il _travare_ lo puoi fare senza problemi con tua sorella che, immagino,

debba sopportarti per mandato, ha tutta la mia comprensione.

In mancanza di sorella/e va bene tutto il parentado.



Il *trovare* e' cosa diversa.

Mi potrai trovare laddove meno te lo aspetti.

Con /alte/ ,anzi direi altissime, considerazioni purtroppo,

ovviamente per te, oltre il tuo scibile.

Ma, come vedi, non scrivo oltre la tua /possibile/ comprensione.



Osservo ora la faccetta.

Le faccette devono essere in tono con il contenuto.

I binari, per me, non sono mai /morti/ .

Conducono sempre verso "un nessun dove" (e' una citazione

troppo alta e a doppia letura, fai finta di non averla letta)



Un 3D ha le sue /meraviglie/ nascoste.

Sempre e comunque e senza se o ma.

Che sia scritto in Java o C++ non fa differenze non sono

le tre istruzioni usate che fanno differenza.





-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Da variant a T



Aridalle. E quando hai un decimal su database, in quale T lo converti? Stringa? E poi i calcoli come ce li fai? 



Stringa va benissimo!

Io li ho fatti? e tu?



 Alle elementari sapevano fare di meglio.



LOL :) Tagliato tutto subito questa riga. Non te la prendere Cara Sandrina, ma non perdo tempo a leggere la valanga di cretinate che scrivi ;)


 Io li ho fatti? e tu?



Ah bene. Quindi tu, Sandrina Cara, i calcoli in precisione multipla li fai tra stringhe? Io dico che si un cazzo di genio. 







E perche' me la dovrei prendere?

In fondo mica le ho scritte per te!

Io quando scrivo cretinate lo faccio /orbi/

E non intendo per quelli senza visione o prospettiva





btw

Vinto scommessa. A meno della faccetta finale!

Ma LOL significa Lot of Love?

Non allagarti! Potresti pentirtene!




Genio! Braaaaaaavo! Finalmente oltre il culo usi anche il cervello!

No. Uno che sa usare tre istruzioni?

Lo so che a te non importa un beneamato!

Ma....

A suo tempo il problema che posi a un /tot/ di

fringuelli (intendesi novizi della programazione)

  fu "Adesso mi rifate la calcolatrice di Windows piu' carina".

questo dopo tre giorni di spiegazioni che 11 puo' fare anche 4

cosa che a suo tempo ti posi, forse, ancora adesso, alla fine del tubo

ti e' entrata ma nel cervello (nel tuo caso si fa per dire) no!



 E allora l'unica risposta possibile e` una martellata sulle gengive.



Immagino le tue?

Non c'e' gusto!

Ormai devono essere una poltiglia.



Il 06/02/19 11:46, Dr.UgoGagliardelli ha scritto:


Per quale motivo butti giu una tesi sballata se non sai neanche come 

funziona la libreria ?

Comunque ecco un esempio:



variant v(number(std::string("1") + std::string('0',10000)));

auto i=numeric_convert<int>(v); //qui viene lanciata una eccezione di 

overflow



auto n=numeric_convert<number>(v); //ok

n *= 2;//moltiplica n * 2

n += n; //aggiunge n a n







Per quanto riguarda il  db e' indipendente da esso:



variant v=... //viene letto il variant dal recordset - il tipo contenuto 

nel variant dipende dal tipo della colonna del db letta



auto i=numeric_convert<int>(v); //se il contenuto puo essere convertito 

in int lo fa altrimenti viene lanciata una eccezione di 

overflow/underflow/contenuto incompatibile



La stessa cosa vale all'inverso ed anche per i parametri di query



E ringrazia che sono stato magnanimo




 nel variant dipende dal tipo della colonna del db letta



ecco, fermiamoci qui per piacere. chissenefrega di come converti un 

variant (ci sono già le funzioni standard, grazie al ciufolo) vogliamo 

capire questa parte che "furbescamente" glissi con i tre puntini.



come fai ad eseguire la query a leggere dal resultset *senza* 

*utilizzare* un driver e una libreria specifica del database, come ad 

esempio oci per oracle? 



questo vogliamo sapere.










 Immagino le tue?



Non farti rodere il culo cosi`, Sandrina, si vede ;)


 nel variant dipende dal tipo della colonna del db letta



Se hai una colonna DECIMAL, che tipo usi? 






 overflow



Il punto sta proprio qui: comunque sia non ci fai i conti.

O sei capace di trattare un' eccezione di overflow come tipo numerico 

utilizzabile con le piu' banali operazioni aritmetiche?




 

Come in prima elementare? Un carattere dopo l'altro e riporto?




 



[CUT]





IL benchmark e' un confronto java c++ non il modo di calcolare le N 

cifre di pigreco il piu velocemente possibile.

Infatti ho scelto volutamente un algoritmo semplice e come avevo 

spiegato all'inizio del post esistono algoritmi piu veloci.

Le gmp vengono usate per calcolare qualche miliardesima cifra di 

pi,basta cercare un bel programma chiamato gmp-chudnovsky.c

Se non usano java ed i BigDecimal per questo un motivo ci sara

Ho notato che il programma e' un algoritmo parallelo,magari mi hai dato 

lo spunto per un bel benchmark.






Il 06/02/19 11:39, Dr.UgoGagliardelli ha scritto:


Tutti state scrivendo ovvieta

java ha compiti,nel senso che e' usato,in ambiti ben diversi da c++

Se si vuole la velocita in alcuni punti,dopo aver profilato per bene,ci 

suo appoggiare a c o c++

Tutto questo non e' mai stato negato dal sottoscritto, i benchmark sono 

solo un confronto di velocita del codice generato.

Poi la scelta di un linguaggio,di solito, va be al di la delle 

performance del codice generato.

Ovviamente so gia le risposte,verra fuori il solito andrea di turno che 

iniziera a sparare minchiate e a diffamare.

Non rispondero agli insulti.








 



Lo volete  sapere tanto per diffamare


 



Mi sa che sei di coccio



 Lo volete  sapere tanto per diffamare



Non serve. Tu hai la capacità innata di diffamarti da solo.

Ed è una cosa che ti riesce benissimo.


 Lo volete  sapere tanto per diffamare



Ma no, semplicemente dai tuoi post non si e' capito. Tra l'altro tu 

stesso hai chiesto cosa si puo' usare per accedere a Oracle db, 

conseguentemente e' lecito pensare che tu non abbia mai utilizzato le 

OCI, che non e' un peccato, semplicemente era interessante sapere che 

interfaccia usi.





Mi dice che non e' un tipo built-in di c++


 java ha compiti,nel senso che e' usato,in ambiti ben diversi da c++



Allora che senso ha compararli?







-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.


 



perche qualcuno ha affermato che java non ha nulla da invidiare a c++ in 

fatto di velocita




 Lo volete  sapere tanto per diffamare



ma di che? ti ho chiesto come accedi al database, mica su che viale 

batti. 



chi?



..e qui chiudo



 



Per accedere alle funzioni oracle o ti costruisci un driver usando il 

protocollo del TNS (e' quello che fa il driver oracle di jdk ad esempio) 

oppure usi le oci c che stanno in una libreria (.dll in win o in .so in 

linux)

Non ci sono altri modi


Il 07/02/19 08:46, Dr.UgoGagliardelli ha scritto:


Certo che non e' un tipo builtin

E' una classe simile a bignumber di java




 Se non usano java ed i BigDecimal per questo un motivo ci sara



Perche` magari per quel contesto BigDecimal non e` la scelta piu` opportuna (esattamente come C++ non e` il linguaggio d'elezione per molti contesti). E quindi, cosa si dedurrebbe da cio`? 


 performance del codice generato.



E quindi a che servono i tuoi benchmark? Domanda atavica alla quale continui a non rispondere. Smettila con questa stronzata della diffamazione e rispondi alle domande. Dire "e` solo un benchmark", non e` una risposta. Quale uso si farebbe del risultato di quel benchmark?


 Lo volete  sapere tanto per diffamare



Dacci un taglio e rispondi alle domande. 




 n += n; //aggiunge n a n



Ma porcozzio (me le tiri proprio dal profondo), che cazzo e` "number"? Rispondi o no? 




 fatto di velocita



Ed e` verissimo. I tuoi benchmark non negano mica quell'affermazione, eh? 




 



Si deduce che non le uso nei programmi utente



 fatto di velocita



E ricordiamo cio` che non ti piace ricordare: 
http://kth.diva-portal.org/smash/get/diva2:648395/FULLTEXT01.pdf




"5.2 Summary

The programming language C as well as Java dominated the tests in terms of execution time while C++ and C dominated the overall speedup gained. The granularity tests showed that Java could handle small tasks while still keeping its overall speedup in comparison to the other three languages. In all of the tests the programming language C# performed the worst in terms of execution time, overall speedup and the amount of granularity the language could handle before the overhead of the tasks took over.

According to the results the most effective programming language in parallel

programming is C with the OpenMP API and Java with the fork/join method. C and Java gave the fastest execution time of all languages and handled granularity in a very efficient way without wasting execution time or overall speed up, especially Java that could handle very small granularity for each task and thread." 








 Si deduce che non le uso nei programmi utente



LOL :) Che sono i "programmi utente"? :D


Il 07/02/19 10:55, 4ndre4 ha scritto:


Carissimo mke2fs

Io non  sono obbligato a rispondere alle domande

Non sono sotto processo con una giuria che mi deve giudicare




Il 07/02/19 11:03, 4ndre4 ha scritto:


Carissimo mke2fs

Ti avevo gia risposto su questo

In java viene usato openmp in c++ TBB

Sono due cose differenti,che senso ha compararle proprio come scrissi 

allora ?

La tua risposta fu che non era una comparazione tra linguaggi ma 

qualcosa d'altro (mi sembra una comparazione tra classi mp differenti)

Ti vuoi rimangiare quello che hai scritto ?






Il 07/02/19 11:04, 4ndre4 ha scritto:


quelli che scrivi tu




Il 07/02/19 10:58, 4ndre4 ha scritto:


Carissimo mke2fs,finora la negano,eccome

BigDecimal non e' performante come le gmp

Sull' IO la scrittura e' ben piu veloce in c++ ed e' ancora piu veloce 

in c (ma come ho dimostrato tramite programma c++ puo utilizzare gli 

stream c,sono nella lib std)

La creazione/distruzione threads idem sia con pool che senza pool

La concatenazione stringhe e' invece un punto  a favore di java (chissa 

ripeterla sul mio desktop attuale con g++-8 ?)

Occorre ancora verificare come si comportano i due linguaggi con lo heap 

std

Poi avevo in mente un bel openmp

Poi ancora non lo so.




 



Che BigDecimal non e' performante come libgmp

Queste sono le conclusioni,poi ognuno e' libero d tirare fuori le 

proprie aspirazioni.


 



In google basta immettere

Scegli tu l'interpretazione che ti piace di piu






Il 07/02/19 10:25, rootkit ha scritto:


Devo cercare qualche vecchio post ?




 



Yes!E' chiaro se sa.



Non so cosa mi fosse passato per la zucca ma dovendo trattare

numeri con migliaia....milioni di cifre un esadecimale fatto in casa mi

era sembrata una trovata da Oscar.

Passata la /sbronza/ tutto e' tornato normale.



P.S.

Ma tu quando devi fare una delle quattro (cinque compresa la radq)

operazioni con carta e matita come fai?



Cmq quando sono particolarmente in vena:

guardo le cifre da posizione yoga, col terzo occhio le riorganizzo

fino al risultato voluto.

Non importa che sia giusto!

Il mio orologio rotto mi ha educato all'insostenibile leggerezza 

dell'essere.

-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Io non  sono obbligato a rispondere alle domande



Solita scusa del cazzo a cui ricorri (insieme a "sono fatti miei", "proteggo la mia privacy", ecc..) quando sai benissimo che non sei in grado di rispondere alla domanda, o potrebbe incastrarti nella tua incompetenza.


 Io non  sono obbligato a rispondere alle domande





 allora ?



E` invece ha assolutamente senso, tanto piu` che i risultati sono quelli di cui parla quel benchmark. Esattamente come ti chiesi allora: perche` si dovrebbe ignorare quel benchmark e dare ascolto a te? Sostituisci Java + OpenMP e C++ + TBB con Java + BigDecimal e C++ + gmplib e dimmi dove sarebbe la differenza. Non uscirtene pero` con "sono fatti miei" eh? 


 quelli che scrivi tu



Non hai risposto alla domanda. Che sarebbero?




Il 07/02/19 12:13, 4ndre4 ha scritto:


Carissimo mke2fs



piu che java vs c++ il post sarebbe da intitolare java vs gmp.

Questo perche c++ non ha nella lib std un bigdecimal.







Questo e' quello che scrissi all'inizio del post




 BigDecimal non e' performante come le gmp



Niente, vedo che continui a scrivere stupidaggini, nonostante tu sia stato ampiamente smerdato in questo thread. E niente, ti piace proprio farti del male. 



I tuoi benchmark non rappresentano niente. E danno risultati che non hanno alcun valore. Ti e` stato detto e spiegato tante volte. 



Cosa cazzo c'entri BigDecimal con gmplib, che tra l'altro e` scritta in C (quindi il C++ non c'entra una ceppa), lo sai solo tu.



Certo che BigDecimal non e` performante come gmp, non e` superottimizzato come gmp. E quindi? :)




Il 07/02/19 12:14, 4ndre4 ha scritto:


carissimo mke2fs:

i programmi che scrivi tu

O forse scrivi classi di utilita generale che ci potrebbero stare nella 

lib std ?

O driver di sistema per qualche os ?




Il 07/02/19 12:10, 4ndre4 ha scritto:


Carissimo mke2fs

Alle domande ho gia risposto a chi di dovere

IL mittente e' il dottore




 che cosa avevo scritto all'inizio del post ?



Che e` un benchmark che non ha senso? Perche` quella e` l'unica interpretazione possibile di "Java vs. gmp".



Tirare fuori le proprie "aspirazioni"? Stai messo veramente male. 


Il 07/02/19 12:23, 4ndre4 ha scritto:


Errata corrige:

Conclusioni




Il 07/02/19 12:18, 4ndre4 ha scritto:


E quindi non lo e'

Punto e basta

Non sta a me giudicare





ti ho chiesto "chi", non importa il "come" e "quando".

quello eventualmente dopo, qualora la persona in questione fossi io.


Il 07/02/19 12:26, rootkit ha scritto:


Coda di paglia ?




 Questo perche c++ non ha nella lib std un bigdecimal.



E quindi che cazzo confronti a fare? Se C++ non ha un BigDecimal nella propria libreria standard e tu vuoi confrontare Java e C++, fai bene ad evitare proprio il confronto. Il problema e` che sei talmente ossessionato dal voler dimostrare che Java si comporta peggio di C++, che finisci per tirare fuori queste perle di stupidaggine. Quel che avresti dovuto fare e ` tradurre il BigDecimal in una classe C++ e confrontare le prestazioni, semmai. E ancora, avresti avuto un risultato che non porta a nulla di buono. Java e C++ si usano per contesti precisi, e la scelta che porta all'adozione di uno o dell'altro e` determinata da innumerevoli fattori, non ultimo il fatto che C++, oggi, non e` piu` indispensabile come un tempo, per task di "basso livello". L'ossessione per le performance e` roba vecchia; roba a cui sono attaccati programmatori (per farti un complimento) come te, le cui competenze si sono cristallizzate e che non hanno mai dovuto risolvere problemi complessi. Oggi, con le architetture distribuite, containerizzazioni, orchestrazioni, microservices, networking vario, pensi che la gente si faccia ancora le pippe su 10 millisecondi guadagnati?


 O driver di sistema per qualche os ?



Driver ne scrivevo negli anni '90, ma per Windows NT. Il Device Driver Toolkit di Windows NT di allora era una bella sfida. 



Comunque non hai risposto alla domanda: che sono, oggi, i "programmi utente"?


 E quindi non lo e'



LOL :) Ma vattenaffanculo


Il 07/02/19 12:29, 4ndre4 ha scritto:


Carissimo mke2fs

Sei tu quello che rode a quanto sembra

Io non ne faccio una ragione di stato






 



bene,quindi non scrivi driver

Fammi un esempio di cio che scrivi e ti rispondero se e' un programma 

utente oppure no.




 Coda di paglia ?



figurati. due volte di seguito che rispondi ad una semplice domanda con 

una domanda per me è prova sufficiente che hai tirato una cazzata.


 Si deduce che non le uso nei programmi utente



ma non si stava parlando di "programmi utente" bensì della classe che tu 

hai scritto per accedere al db. ricordi? ad ogni modo possiamo uscire da 

questo circolo vizioso "io non ho mai detto" "chi l'ha mai affermato"? 

tranquillizzati, non ti sto tendendo nessuna trappola.


 Io non ne faccio una ragione di stato



No, certo: Java vs. C++ a iosa e centinaia di post inutili in cui cerchi di difendere testi indifendibili.




 utente oppure no.



Perche` non la smetti con queste stupidaggini, questo continuo girare intorno alle domande che ti vengono fatte, e invece rispondi, una volta per tutte?



Io non ti ho chiesto se i sistemi che sviluppo corrispondano o meno alla tua definizione di "programmi utente"; ti ho chiesto che cosa significa "programmi utente".



Sai rispondere a questa domanda? 


 



E fa parte della tua libreria o cos'altro? Visto che apparentemente non 

è un tipo esportato da gmplib.

Te lo chiedo perche' con capisco la ragione per cui nel tuo 'benchmark' 

non hai utilizzato quella invece di gmplib.


 driver gestisce le cose per l'appropriato  db di riferimento.



Ah, davvero? :)




 E' una classe simile a bignumber di java



E guarda se risponde alle domande.... che cazzo e` quel "number"? Spiegalo. Ti vergogni?




 è un tipo esportato da gmplib.



"Saranno anche affari miei!" (cit.)






 Non ci sono altri modi



per buona pace del multidatabase.


 spiegato all'inizio del post esistono algoritmi piu veloci.



Sì, hai scelto BBP, ma l'hai implementato senza gmp (cosa disponibile anche in Java) e, oltretutto, hai anche implementato i BigDecimal nel modo più lento possibile. Perché lo fai?



BBP già scritto così è trenta volte più veloce:



  import java.math.*;

  import java.util.Date;



  public final class Pi {   

  private static final BigDecimal BD_2 = new BigDecimal("2");

  private static final BigDecimal BD_4 = new BigDecimal("4");



  private static BigDecimal alpha;

  private static BigDecimal beta;

  private static BigDecimal gamma;

  private static BigDecimal delta;  



  static int calcDigits;

  static int calcCycles;  



  private static class BBP_split implements Runnable {

        int angle;



        private BBP_split(int angle_in){angle = angle_in;}



        @Override

        public void run(){

            BigDecimal sum = BigDecimal.ZERO; 

            BigDecimal value;  

            BigInteger divisor;



            switch (angle) {

                case 1:

                    value = BD_4.setScale(calcDigits, RoundingMode.DOWN);

                    for(int k = 0, j = 0; k < calcCycles; k += 8, j += 4){

                        divisor = BigInteger.valueOf(k + 1).shiftLeft(j);

                        sum = sum.add(value.divide(new BigDecimal(divisor), RoundingMode.DOWN));

                    }

                    alpha = sum;

                    break;

                case 2:

                    value = BD_2.setScale(calcDigits, RoundingMode.DOWN);                    

                    for(int k = 0, j = 0; k < calcCycles; k += 8, j += 4){

                        divisor = BigInteger.valueOf(k + 4).shiftLeft(j);

                        sum = sum.add(value.divide(new BigDecimal(divisor), RoundingMode.DOWN));

                    }                   

                    beta = sum;

                    break;       

                case 3:

                    value = BigDecimal.ONE.setScale(calcDigits, RoundingMode.DOWN);                      

                    for(int k = 0, j = 0; k < calcCycles; k += 8, j += 4){

                        divisor = BigInteger.valueOf(k + 5).shiftLeft(j);

                        sum = sum.add(value.divide(new BigDecimal(divisor), RoundingMode.DOWN));

                    }                 

                    gamma = sum;

                    break; 

                case 4:

                    value = BigDecimal.ONE.setScale(calcDigits, RoundingMode.DOWN);                    

                    for(int k = 0, j = 0; k < calcCycles; k += 8, j += 4){

                        divisor = BigInteger.valueOf(k + 6).shiftLeft(j);

                        sum = sum.add(value.divide(new BigDecimal(divisor), RoundingMode.DOWN));

                    }                  

                    delta = sum;

                    break;                       

            }

        }

  }



  public static void main(String args[]) throws InterruptedException {

    final int digits = args.length > 0 ? Integer.parseInt(args[0]) : 10000;

    final boolean print_pi = args.length != 1;



    Date start = new Date();



    calcDigits = digits + 5;

    calcCycles = 20 * digits / 3; 



    Thread t1 = new Thread(new BBP_split(1));

    Thread t2 = new Thread(new BBP_split(2));

    Thread t3 = new Thread(new BBP_split(3));

    Thread t4 = new Thread(new BBP_split(4));   

    t1.start(); t2.start(); t3.start(); t4.start();     

    t1.join();  t2.join();  t3.join();  t4.join();    

    BigDecimal pi =  alpha.subtract(beta).subtract(gamma).subtract(delta)

                        .setScale(digits, RoundingMode.DOWN);



    Date end = new Date();



    if(print_pi){      

        String pi_str = pi.toString();        

        System.out.println("Pi = 3.");

        int j = 10;

        for(;j < digits; j += 10){

            System.out.print(pi_str.substring(j - 8, j + 2));

            if(j % 100 == 0)

                System.out.println(" : " + j);

            else

                System.out.print(" ");

        } 

        j -= 10;

        if(j < digits){

            System.out.print(pi_str.substring(j + 2, digits + 2));

            if(digits % 100 == 0)

                System.out.println(" : " + digits);

            else

                System.out.println(); 

        }        



        System.out.print("Time : ");

        System.out.print(end.getTime() - start.getTime());

        System.out.println(" ms");

    }

  }

}


 

 > BBP già scritto così è trenta volte più veloce:



Le motivazioni per cui non ho usato gmp in java le ho gia spiegate.

IL tuo programma usa il parallelismo,grazie che e' piu veloce.

IL benchmark usa lo stesso algoritmo sia in c++ che in java proprio per 

testare i BigDecimal vs gmp.

Mettere di mezzo un parallelismo potrebbe inficiare i test in quando 

dipende da come i due sistemi gestiscono i threads.

Se vuoi tentare di rendere piu veloce il programma java va bene,sono 

pronto ad accogliere considerazioni.

Ma senza usare il parallelismo.







[CUT]


 



Cosa intendi per multidatabase ?


Il 07/02/19 16:39, 4ndre4 ha scritto:


"programma utente" e' un concetto.

Non esiste una definizione.



Un semplice programma che produce un tabulato leggendo da un db e' un 

programma utente

Un tomcat war e' un programma utente




Il 08/02/19 03:27, 4ndre4 ha scritto:


Esatto,saranno anche affari miei

Non sono sotto processo

Ho spiegato a grandi linee come funziona il tutto.

Dovreste essere soddisfatti e basta

O qualcuno di voi vuole andare avanti con l'unico scopo di criticare le 

miei scelte progettuali ?

Non devo rendere conto a voi.




 Ma senza usare il parallelismo.



E che ci vuole? Davvero te lo devo dire io?



    /*

    t1.start(); t2.start(); t3.start(); t4.start();     

    t1.join();  t2.join();  t3.join();  t4.join();   

    */

    t1.start(); t1.join();

    t2.start(); t2.join();

    t3.start(); t3.join();

    t4.start(); t4.join(); 



A me risulta che a 1000 decimali il tempo di computazione sia quasi nullo, quindi per il 99.9% delle applicazioni la gente può tranquillamente usare i BigDecimal. Per il restante 0.1% ci sono le librerie. Se devi fare la libreria stessa, comunque sceglieresti il C: nessuno sano di mente metterebbe il C++ di mezzo, quando il vero problema è come usare al meglio registri e instruction set del processore. Al limite si rivede la compatibilità con C++ a progetto ultimato.



Perché si debba utilizzare direttamente il C++ lo sa solo il signore


Il 08/02/19 08:34, Giuspi ha scritto:


Non ho scritto che non si puo usare il parallelismo in C++

Ma e' un altro benchmark

Le tue considerazioni all'atto pratico vanno bene

Lo scopo del tutto e' solo un benchmark




 Un tomcat war e' un programma utente



Eh?! :D




 testare i BigDecimal vs gmp.



A che pro?


 testare i BigDecimal vs gmp.



A che pro?


 Cosa intendi per multidatabase ?



LOL :D


 Esatto,saranno anche affari miei



LOL :) Ma vattenaffanculo (e so due). Pretendi di confrontare linguaggi e quando ti si incalza con domande tecniche, su questioni tecniche, rispondi con un "sono affari miei". Sei veramente patetico. 


 Lo scopo del tutto e' solo un benchmark



E a cosa serve un benchmark se dal suo risultato non si possono formulare considerazioni che abbiano un valore all'atto pratico? Pensi che a chi sviluppi di mestiere piaccia farsi le seghe sui timing?


 Lo scopo del tutto e' solo un benchmark





Il 08/02/19 09:48, 4ndre4 ha scritto:


mke2fs




 >> Un tomcat war e' un programma utente



Hai coraggio. Spari stronzate come quella sopra, facendo uno sfoggio cosi` plateale di incompetenza, e poi hai il coraggio di accusare gli altri di diffamarti. Sei veramente disarmante.








Il 08/02/19 11:26, 4ndre4 ha scritto:


Ma tu sai cosa e' un tomcat war ?





una guerra fra gatti?


Il 08/02/19 12:52, rootkit ha scritto:


no,e' un applicativo java impaccato in un file avente estensione war che 

gira sotto tomcat





ma rotfl!


 Cosa intendi per multidatabase ?



niente niente, dormi tranquillo.


 Cosa intendi per multidatabase ?



Non te ne interessare.

La ha buttata li cosi'. Tanto per dire.

A un qualsiasi /aggeggio/ ci metti _multi_ davanti e fa fico!

Vuoi mettere piattaforma con multi_piattaforma?

Linguaggio con multi_linguaggio?

Utenza con multi_utenza

Plicazione con multi_plicazione?

Seicento con seicento multipla?





-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


Il 08/02/19 09:52, 4ndre4 ha scritto:


Ti rode talmente tanto che hai le balbuzie da tastiera




 



Mi sa proprio di si




 



Non anche,che java ha una lib std ben piu estesa non e' un segreto

IL "anche" non c'entra niente



 



Va bene.

Comunque l'accesso e' ai db,non al db

Mica supporta un solo db




 Ma tu sai cosa e' un tomcat war ?



Il grosso problema di questo thread non e` cio` che so io, ma cio` che NON sai tu. Ed e` veramente un mare di roba. Perche` ti fai del male? 



Non hai risposto alla domanda: cos'e` un "programma utente"? 




 gira sotto tomcat



Guarda, ti do il tempo di andare su Google, cercare, e correggere il tiro. Dai forza. 






 Ti rode talmente tanto che hai le balbuzie da tastiera



Mi rode? LOL :) Ti ho fatto una domanda: a che pro? Rispondi o no? 




 Non anche,che java ha una lib std ben piu estesa non e' un segreto 



pensaci meglio, ciccio. se fosse un mero problema di implementazione 

qualcuno si sarebbe preso la briga di sopperire, mica è obbligatorio 

usare solo la libreria standard.



a proposito, come sta la comunità open source? e come si chiama il tool 

che usi per risolvere e scaricare le dipendenze? <grin>


 A un qualsiasi /aggeggio/ ci metti _multi_ davanti e fa fico!



che cerchi?


 che cerchi?



La Cara Sandrina cerca attenzione, come sempre.


 questo tu lo puoi fare?



So che la tua e` una domanda retorica ma rispondo perche` so bene che se ne uscira` con un "mi stai diffamando!", "ti rode!", "sono affari miei!", "vado a chiamare mio cuggino!". 



Ovviamente no, non lo puo` fare. Il primo step che avrebbe a disposizione, per raggiungere il cross-db, sarebbe quello di usare uno standard come ODBC, per esempio, ma comunque non riuscirebbe ad astrarre da tipi o funzioni specifiche del database. Tutto cio` non sarebbe comunque nella libreria standard. La verita` e` che Java, con JPA e Hibernate, batte C++ a mani basse. Un confronto non sarebbe neanche da pensare. 



immagino. 

ho letto nell'altro messaggio tutta la tua sensibilità sul tema.



se vuole pomiciare con enoquick faccia pure, basta che non rompa i cojoni 

a me.


Il 09/02/19 00:52, 4ndre4 ha scritto:


per testare i bigdecimal vs gmp,come avevo scritto

Oltre alle balbuzie da tastiera non sai comprendere gli scritti ?


 



Vuoi dire le dipende di un eseguibile ?

Se e' questo il comando e' ldd (linux)




Il 09/02/19 00:51, 4ndre4 ha scritto:


Su google ci vado,ma non per il motivo che affermi tu



https://www.baeldung.com/tomcat-deploy-war




https://stackoverflow.com/questions/5109112/how-to-deploy-a-war-file-in-tomcat-7



 Se e' questo il comando e' ldd (linux)



rotfl.




Il 09/02/19 08:32, rootkit ha scritto:


rotfl sto piffero

un tool per risolvere le dipendenze

Dipendenze di cosa ?





oh stai calmino, eh... va bene, ho sbagliato. ma mica me vorrai fare una 

colpa, credevo di parlare con un programmatore (ghghghgh!)


 per testare i bigdecimal vs gmp,come avevo scritto



Non e` una risposta alla mia domanda. A quale scopo li hai confrontati? 


 Se e' questo il comando e' ldd (linux)



LOL :)


 Su google ci vado



Si`? Se solo ci fossi andato prima di scrivere una tale boiata. Come se i WAR, poi, fossero solo roba Tomcat. Stai messo male enoquick; piu` scrivi, piu` ti inguai.


 Dipendenze di cosa ?



LOL :) Stai messo male - molto male.



rotfl!



forma smagliante, oggi... 


Il 09/02/19 10:02, 4ndre4 ha scritto:


E tu per quale motivo continui a rompere i marroni con domande insulse ?


Il 09/02/19 09:32, rootkit ha scritto:


E tu lo sai che essendo la distanza che ci separa di circa 10000 km 

l'apparecchio di mia invenzione nel leggere i pensieri altrui ha qualche 

problemino vista la distanza.

Ci sto lavorando ma non ho ancora trovato una soluzione.




Il 09/02/19 10:06, 4ndre4 ha scritto:


ma  smettila di rompere i ciuffoli

Un bel mke2fs,stai sorpassando,tanto per non  cambiare,il limite

Ho fatto un paio di esempi e continui ad insistere.




 E tu per quale motivo continui a rompere i marroni con domande insulse ?



Perche` e` evidente che non e` una domanda insulsa. E` una domanda a cui non stai rispondendo. 



Se tu dici: "io faccio X". E io ti chiedo: "A che scopo fai X?". E tu rispondi: "Perche` volevo fare X", non stai rispondendo alla domanda. Metti al posto di X il tuo "benchmark Java vs. gmplib". Ma tanto non capirai neanche stavolta.




 Ho fatto un paio di esempi e continui ad insistere.



Quali esempi? Parli di "tomcat war", li descrivi come "programmi utente". Continui a fare sfoggio di totale incompetenza. Continui a farti del male. 




 Ci sto lavorando ma non ho ancora trovato una soluzione.



si bravo, leggi il pensiero vah.


 leggere i pensieri altrui



LOL :) Cioe`, tu pensi davvero che "dependency management" sia un concetto che esiste solo nella mente di rootkit e, se lui non ti spiega cosa vuol dire, non sarai mai in grado di rispondergli? Non sei manco furbo. Non sai manco andare su Google e cercare "dependency management in C++".


Il 09/02/19 10:36, 4ndre4 ha scritto:


Lo scopo era un confronto BigDecimal gmp

Come ho gia spiegato




Il 09/02/19 11:10, rootkit ha scritto:


Invece che fare lo spiritoso spiega

Io non so cosa intenti per dipendenza tra ... (che cosa ?)

Una classe ?

Un pincopallo qualunque

Non e' che devo mettermi ad indovinare,non ne ho nessuna voglia.




Il 09/02/19 10:38, 4ndre4 ha scritto:


carisssimoo mke2fs

volevi sapere di un programma utente ed ho fatto un paio di esempi.

Poi mi vieni a scrivere che il tomcat war non e' un programma utente 

(chissa che cosa e')

Liberissimo di pensare in codesto modo,ma il mio concetto rimane quello.

E visto che qui siamo nelle interpretazioni soggettive puoi sparare 

tutto il livore che vuoi.




 Invece che fare lo spiritoso spiega 



ma non ci penso nemmeno. non hai idea di quanto sia divertente farti 

trottare <grin>


 



Ho forse risposto a te?

Fermo restando che questo /floor/ e' pubblico.

Quindi la risposta e': rogna.



-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 



Tessssssoro mio!

La tua perspicacia e' senza /competitors/ .

Mi ricordi Virna Lisi.

Con quella tastiera puoi dire cio' che vuoi!

SMCIUCK!



 dynamic library loading



Non e' per rompere le palle ma non era

dynamic linking library?



 



Ancora campa?

Quando ne lessi le caratteristiche mi sovvenne! toh! guarda chi c'e'

Per chiarire non ho nulla /contro/ Hibernate, immagino faccia il

suo porco lavoro.



 



Come Pierino preferivo/preferisco Alvaro Vitali!

Ti rispondo io cosi' ti levi dagli zebbedei.

Un programma utente e' qualcosa che /altri/ usano/useranno.

Linux e Win sono due /programmi utente/ .

Come ti senti ad essere utente e quindi utonto?



 

si

https://it.wikipedia.org/wiki/Dynamic-link_library






Non so perche' ma questo mi ha portato verso la seriosita'.

Su questo NG ho letto.

Talvolta e' stato solo un ripasso.

Talvolta qualcosa di nuovo.

I /fondamenti/ delle informatica, mi voglio autocelebrare,

forse li conosco.

Ognuno e dico ognuno, fosse pure il padreterno che dicono sia

onnisciente, sa cose altre non le sa.

I /maestri/ insegnano non fanno /trottare/ .

I /maestri/ per primi riconoscono la loro parzialita'

Tu e quell'altro sarete anche /bravi/ forse /capaci/ ma

non siete di certo /maestri/ .

Due Pico della Mirandola ma il genio e l'arte sono ben altro.

Il vostro attuale /foe/  ha tutta la mia stima e la mia simpatia.

Lui puo' solo crescere voi siete destinati a /incartarvi/ su voi stessi.

Auguri e buon /galoppo/ .

Quanto fate sul miglio?



 



Non sei di grandi vedute?

Strano? Ma come?

Etero senza se e senza ma?

Come mi disse qualcuno. Non sai che ti perdi!

Eppure scrivi di multi!



Tu e l'altro siete un vero spasso!



 Lo scopo era un confronto BigDecimal gmp



Niente - non gliela fai. Ma vattenaffanculo, come ribadito piu` volte.


 (chissa che cosa e')



Veramente sei stato TU ad affermare che un "tomcat war" e` un "programma utente", non io ad affermare il contrario; anche perche` non avendo ancora capito che cosa sia un "programma utente", come potrei mai dire X o Y sono un "programma utente"? 



Al solito, ribalti l'onere della prova sugli altri perche` non hai argomenti a supporto di quel che scrivi.  Affermi, "hey X e` un babaluba!", uno ti chiede cosa sia un "babaluba" e tu rispondi: "ha! Libero di pensare che X non sia un babaluba!"



Penoso. Davvero.


 Ancora campa?



LOL :) 


 Un programma utente e' qualcosa che /altri/ usano/useranno.



Bella definizione del cazzo. Peccato che la usiate solo voi due imbranati.


 non siete di certo /maestri/ .



Sanrdina, ma quanto ti rode il culo, eh? :D


 Non e' che devo mettermi ad indovinare,non ne ho nessuna voglia.



Infatti non avresti nessuna necessita` di tirare a indovinare, se tu fossi competente anche un minimo. Un programmatore che non sa cosa sia il "dependency management", nel 2019.... scioccante. 



Anziche` chiedere agli altri di spiegare, vai su Google, cerca e mettiti a studiare. 



Per esempio qui c'e` un link: 
https://anteru.net/blog/2018/dependency-management-2018/index.html




Notare quel che dice il sommario: "If you were hoping for the one solution solving all C++ dependency problems, you'll leave disappointed. Sorry about that! However, if you were always wondering how to roll your own solution, I hope this post brought you some inspiration. It's really not that much work once you nail down your requirements".



In sostanza, vuoi un "dependency manager"? Scrivitelo!



Ma io sono un aristocratico.

Mai vorrei confondermi con /te/ plebe.

Fermo restando che hai fatto un assunto da provare.

Io non mi permetto di assumere che _enoquick_ la pensi come me.

Che tu /servo/  non ancora /liberto/ possa parlare/scrivere

lo devi  alla mia grande ampiezza di vedute.



Per te sempre e comunque Re Stellare!



Il 09/02/2019 23:41, 4ndre4 ha scritto:


Dopo lo spasso (cfr. precedente post).



Alura!

Dammela tu una definizione di "programma utente"

Mi raccomando cerca di farla la piu aimbranata possibile.

Dai forse ce la fai!




A me?

In Altro NG  avrei scritto,invece di quanto fai al miglio:

in quanto giri al Mugello!



P.S.

Fretta e foga fanno fare errori

Sandrina? Sardina?

Sanrdina? Che cavolo e' deciditi!

Questa tua approssimazione mi fa venire vogli di xanax

di cui tu, certamente, sei un cultore.




Sempre Lot of Love?

Capisco!

Ma e' questo l'effetto che faccio!



 Ma vattenaffanculo

Ohhhhhhhhhhhhhhhhhhhhhhhhhhhhh!

Finalmente un po di autocritica!



Il 09/02/2019 23:41, 4ndre4 ha scritto:


P.P.S.



Vedi anche noi Re Stellari facciamo assunti /talvolta/ non veri.

Dagli zebbedei non ti sei tolto!



 Ma io sono un aristocratico.



Yawn.


 Dammela tu una definizione di "programma utente"



Impossibile - semplicemente non significa un cazzo. Ora basta, pero`, Sandrina Cara, che dopo un po` diventi veramente noiosa ;)


 Se e' questo il comando e' ldd (linux)



Ma dai! Al massimo ldd ti dice quali, delle librerie gia' presenti, il 

programma usera'.



Lui si sta riferendo a qualcosa di un po' piu' sofisticato, tipo maven.



A parte cmake, (che se c'e' un casino con le versioni delle librerie te 

lo ciucci), che non e' un vero e proprio dependency manager, in c++ 

esiste un tool almeno maturo? In passato ho visto qualcosa, ma neanche 

lontanamente paragonabile a maven.






 E tu lo sai che essendo la distanza che ci separa di circa 10000 km 



Quindi sei davvero in Messico? Ma per curiosità, lavori proprio lì o ti stai godendo la pensione all'estero?


 Lui puo' solo crescere voi siete destinati a /incartarvi/ su voi stessi.



premesso che di tutto questo tuo bel discorso fondamentalmente non me ne 

fotte na beata minchia, ad ogni qual modo in una seppur momentanea e 

circoscritta situazione di maestro-allievo esistono delle regole minime 

che vanno rispettate. generare flame e sostenere in modo più o meno 

esplicito che l'argomento è una merda non mi dispone molto a fornire 

spiegazioni, per dire.


 Fermo restando che questo /floor/ e' pubblico.



ah, ok.

siccome questo "floor" è pubblico e non rispondi a me, tu puoi tirarmi in 

ballo alla pene di segugio e io non ho titolo di chiederti che cazzo vuoi.






 Tu e l'altro siete un vero spasso!



Ho forse risposto a te?

Fermo restando che questo /floor/ e' pubblico.

(cit.)



Che sia un troll, lo si e' visto dai primi momenti.

Che sia un mentecatto con un complesso d'inferiorita' verso chiunque non 

si dimostri altrettanto, lo si vede dal linguaggio con inciampi che 

vorrebbero essere 'ermetici', tanto per darsi un tono.




 in c++ esiste un tool almeno maturo?



No. 




Il 09/02/19 16:33, 4ndre4 ha scritto:


Dai mke2fs,scrivi quello che vorresti che ti venisse scritto








Il 09/02/19 16:51, 4ndre4 ha scritto:


E perche mai dovrei scriverlo ?

Io ho gia un dependency manager





https://hackernoon.com/approaches-to-c-dependency-management-or-why-we-built-buckaroo-26049d4646e7




Dependency management is the process of maintaining links to external 

libraries used by your project





il comando ldd,come avevo scritto,e' un dependency manager



  ldd $(which cat)

	linux-vdso.so.1 (0x00007fff7c7a0000)

	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007faca18d2000)

	/lib64/ld-linux-x86-64.so.2 (0x00007faca1ecc000)





Hooo

Ma forse vuol dire dipendenze esterne come librerie di source.

Non ne uso,non ne ho bisogno

In fondo per quelle 4 righe che scrivo che lo uso a fare ?

Un analizzatore di codice invece ogni tanto lo uso.

Ed adesso fatti pure avanti,so gia cosa scriverai




Il 10/02/19 03:03, Giuspi ha scritto:


E chi ha affermato che sono in Messico ?




 



ldd e' un dependency manager

Poi quello che intendeva lui,lo dovrebbe spiegare lui.




,scrivi quello che vorresti che ti venisse scritto



Nah. Non ci provare. Ti e` stata fatta una domanda specifica: a che pro confronti BigDecimal con gmplib. Tu rispondi: lo scopo era il confronto. E` come se uno ti chiedesse: "perche` hai ucciso Mario Rossi?" e tu "Perche` mi andava di ucciderlo". 



Mi ricordi quell'Hitler Tony intervistato da Lillo e Greg: 



https://www.youtube.com/watch?v=ny0l-cKyY7I



 In fondo per quelle 4 righe che scrivo che lo uso a fare ?



La dimensione del progetto su cui si lavora non ha importanza.


 Poi quello che intendeva lui,lo dovrebbe spiegare lui.



No, dovresti saperlo tu. 




Il 10/02/19 08:52, 4ndre4 ha scritto:


Mi sa che tu non comprendi una cosa

Confronto BigDecimal con gmp per avevo voglia di fare un confronto

Ma ripeto ,scrivi quello che vorresti che ti venisse scritto





Forse vorresti leggere frasi come queste:





poiche so che java e' una emerita schifezza ho voluto fare un confronto 

BigDecimal con gmp proprio per fare vedere la schifezza.

Ti piace questa ?

Se ti piace prendila come risposta.




 



Certo,faccio un programma di 10 righe ed uso un dependency manager

Certo che se tu ti diverti a perdere tempo cosi,affari tuoi.


 



Io non sono onnisciente al contrario di qualcun altro che crede di esserlo.






 poiche so che java e' una emerita schifezza



Se lo avesti scritto, saresti stato piu` intellettualmente onesto. Invece, ci giri attorno, prendendola molto alla larga. Se Java sia o meno una schifezza, non lo sai. Non lo hai mai usato.


 Certo,faccio un programma di 10 righe ed uso un dependency manager



La dimensione di un progetto non c'entra. Ogni mio progetto, non importa quanto grande o piccolo, e` un progetto Maven. Tu non sai neanche cosa sia un dependency manager. Se sia adatto o meno non lo sai.


 Io non sono onnisciente al contrario di qualcun altro che crede di esserlo.



Onnisciente? A parte che nessuno ha mai preteso di esserlo, non sapere cosa sia un "dependency manager" e` a dir poco scandaloso.


 Poi quello che intendeva lui,lo dovrebbe spiegare lui.



Te lo domando io, perche' proprio non lo so e quando programmo con altri 

linguaggi diversi da Java, c++ incluso, ne sento la mancanza.

Che dependency manager si possono utilizzare in c++?






Il 10/02/19 10:08, 4ndre4 ha scritto:


Se ti diverti a perdere tempo con cazzatielle di questo genere fai pure

Non ho tirato fuori io l'argomento del dm.

A me non interessa un dm,non so che farmene.




 



Va vattene con un mke2fs


 





Non lo so,non ne ho mai utilizzati a párte ldd

Non  ne vedo la necessita

Quello che invece uso sono analizzatori di codice,quelli si che possono 

essere utili per un linguaggio  complesso e flessibile come c++

MS lo fornisce in VS,persino adattabile dall'utente


 



Infatti i benchmark li ho fatti scrivere da mia sorella.


 MS lo fornisce in VS,persino adattabile dall'utente



pensa che visual studio integra anche nuget, che è (udite udite) un 

package/dependency manager.


 senza dire al linker quale libreria vuoi caricare



bene. e se al linker non dici nulla della libreria come risolve le classi/

funzioni/simboli in esso contenuti e che avrai ovviamente usato (e 

compilato) nel codice?


 senza dire al linker quale libreria vuoi caricare



Ne sei sicuro? Il mio linker mi dice unresolved symbol per ogni 

variabile, funzione classe di cui non trova il contenitore (lib, dll, 

modulo che sia) che le dichiara.


 



Questo la dice lunga sulla complessita' dei progetti che sei solito 

gestire.

Io ad esempio sto lavorando su un progetto che per ora e' arrivato ad 

utilizzare 29 librerie esterne, escludendo quelle che già fanno parte 

del progetto. Senza un meccanismo che verifichi e renda consistenti 

librerie e relative versioni, sarebbe una bella complicazione.


 Non ho tirato fuori io l'argomento del dm.



Ovvio - non sai manco cos'e`. 








 Va vattene con un mke2fs



Guarda che non sei obbligato a rispondere, eh? Ogni tanto puoi startene anche zitto, specialmente se scrivi stupidaggini del genere.


 Infatti i benchmark li ho fatti scrivere da mia sorella.



I tuoi esperimentini (non benchmark) non dimostrano una ceppa.




 essere utili per un linguaggio  complesso e flessibile come c++



Ma che cazzo c'entrano gli analizzatori di codice con i dependency manager... LOL :)

E poi tool di analisi statica del codice ne esistono a bizzeffe per QUALUNQUE linguaggio.



Non ho seguito tutto il thread, ma per rispodere a questa particolare

domanda, visto che il linkiing dinamico lo usavo spesso, effettivamente 

non c'e' bisogno di linkare "staticamente" la libreria; le operazioni 

del linker vengono fatte a run time. Almeno ai miei tempi, in C/C++ se 

usavi linking dinamico, non avevi bisogno di dichiarare prima il 

prototipo la funzione caricata dinamicamente (in un certo senso lo 

dichiaravi in realta' con una typedef, ma quella non crea problemi al 

linker).



Con una ricerca "al volo" ho trovato il seguente link che sembra 

spiegarlo abbanstanza bene (in particolare alle pagine 9 e 10).



http://home.deib.polimi.it/brandole/acsocr/L06%20-%20Dynamic%20Linking.pdf




Ciao,

Marco.


 





Ma perche continui a scrivere robe assurde come questo ?

Secondo te come fanno a gestire ad esempio il driver odbc od ado ?

Poi  mi dici che cavolo centra la reflection ?

E' ovvio che c++ non abbia qualcosa del genere,non e' fattibile proprio 

per il suo tipo di progettazione.

Peccato che la reflection non serva in questo caso



Il 11/02/19 00:09, rootkit ha scritto:


si,lo so

Ma e' un package manager non un dependency  manager

Mai usato comunque




Il 11/02/19 00:38, rootkit ha scritto:


se vuoi sapere come si fa,ad in esempio in linux,cerca qualche esempio 

che usi dlopen che e' l'api per caricare a runtime i .so






Il 11/02/19 01:40, Dr.UgoGagliardelli ha scritto:


Anche per te,se vuoi sapere come si fa, cerca qualche esempio di dlopen 

(linux) o loadlibrary (win32/64)




 





Lo so,dal buon vecchio lint gia dagli anni 80


 Secondo te come fanno a gestire ad esempio il driver odbc od ado ?



Cosa cazzo c'entrano ODBC/ADO con il caricamento dinamico? 


 Ho forse scritto che esiste una relazione tra questi ?



"Quello che INVECE uso" (enoquick)


 (linux) o loadlibrary (win32/64)



Al solito, non ci hai capito una mazza. Quelle funzioni (dlopen/loadlibrary) le puoi usare per caricare un so/DLL, ma il tuo codice dovra` almeno poter riconoscere i prototipi delle funzioni contenute nelle DLL e quindi dei tipi presi in input da quelle funzioni o restituiti in output. Se ho la mia bella libreria.dll che espone la funzione "T faiQualcosa(A oggetto);", i tipi T e A dovranno essere visibili al tuo codice tramite un libreria.h a *COMPILE TIME*, altrimenti COL CAZZO che il tuo codice compila.


 



odbc ed ado funzionano concettualmente come jdbc

caricano a runtime una dll corrispondente al driver usato




Il 11/02/19 07:26, 4ndre4 ha scritto:


Mi sai che non comprendi bene il concetto che,nel nostro caso,tutte le 

dll (che sono i driver) espongono la stessa interfaccia pubblica.




Il 11/02/19 07:19, 4ndre4 ha scritto:


Certo,ma mica c'e scritto  che sono la stessa cosa




 caricano a runtime una dll corrispondente al driver usato



Ti ci voglio proprio vedere a scrivere codice crossdb con ODBC/ADO in C++


 dll (che sono i driver) espongono la stessa interfaccia pubblica.



Quale "nostro caso"? Di che cazzo parli?




 Certo,ma mica c'e scritto  che sono la stessa cosa



Non ho scritto che tu abbia scritto che sono la stessa cosa. Ho scritto che non c'entrano un cazzo l'uno con l'altro. Se usi l'avverbio "invece", a quel modo, e` evidente che stai offrendo un'alternativa. Gli analizzatori di codice non sono un'alternativa, in quel caso.

Chiarisciti i concetti nella testa impara a scrivere.




 





L'ho fatto nel mio framework


Il 11/02/19 08:25, 4ndre4 ha scritto:


Se e' cosi  lasciamo stare




Il 11/02/19 08:27, 4ndre4 ha scritto:


Va bene,hai ragione




 L'ho fatto nel mio framework



Si`, e che ti sei costruito a fare tutto a manina se te lo offriva gia` ODBC e ADO? :) Sei un cazzaro della peggior specie :)




 Se e' cosi  lasciamo stare



Ecco, bravo. Lascia stare, va`, che ti stai incartando :)





Ciao Marco, grazie dell'informazione.



Una domanda da non esperto: l'esempio che hai linkato è in C, ma sicuro che va giù liscio anche in C++? Non c'è da aggiungere extern "C" o qualcosa del genere da qualche parte, altrimenti il compilatore si arrabbia coi simboli?


Il 11/02/19 08:53, 4ndre4 ha scritto:


il framework utilizza internamente le api ado se il db e' un ado



IL framework espone una interfaccia pubblica uguale per tutti,sia che si 

utilizzi ado,odbc,oci,ecc..



Ecco a cosa serve


 utilizzi ado,odbc,oci,ecc..



Si`, si`, certo, come no.


 si,lo so 



e te pareva :-)




 Una domanda da non esperto: l'esempio che hai linkato è in C, ma sicuro che va giù liscio anche in C++? Non c'è da aggiungere extern "C" o qualcosa del genere da qualche parte, altrimenti il compilatore si arrabbia coi simboli?



Solo se cerchi di usare codice C++ "name-mangled" da C. Il codice C non puo` riconoscere, ovviamente, le regole di decorazione C++.




 
http://home.deib.polimi.it/brandole/acsocr/L06%20-


%20Dynamic%20Linking.pdf



cioè andando a cercarsi i simboli a mano come stringhe. per la serie 

prendiamoci a martellate nelle gonadi :-)




 



Sbaglio o ti ho risposto (risposta tagliata)?

Proprio in virtu' del fatto che il NG (moderato o non moderato) e' fatto

per questo.

Volevo scrivere che e' /ontologicamente/ cosi' ma poi il Dottor Ugo mi

si incazza e figurati quale altro titolo onorifico mi associa.



-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)








Grazie. Tre titoli /onorifici/  in un colpo solo non e' da tutti.

btw sostituisci inferiorita' con superiorita' e tutto torna.

Sia per me che per te.



 



In  un vecchissimo film spaghetti-western la frase ricorrente di

Ringo (aka Montgomery Wood aka Giuliano Gemma) c'era il tormentone della

frase "Poi te lo spiego"



Il 11/02/19 09:58, 4ndre4 ha scritto:


Sei libero di non crederci

Affari tuoi




Il 11/02/19 11:38, rootkit ha scritto:


Ma certo,visto che uso VS lo so

Ma hai dimenticato:



Ma e' un package manager non un dependency  manager



Anche tu come quell'altro che piace tagliare quello che non fa comodo ?






 Sei libero di non crederci



Certo che non ci credo! :D era un "si`, si` certo retorico". Con la montagna di stupidaggini che scrivi, pensi che ti possa mai credere?


 Anche tu come quell'altro che piace tagliare quello che non fa comodo ?



Noi, eh? :D 



Sparacazzate che non sei altro :)





Non so cosa tu intenda con "andando a cercarsi i simboli a mano come 

stringhe" (come dicevo non ho letto tutto il thread per cui può

darsi che tu faccia riferimento a qualcosa che mi sfugge).



In ogni caso quando lavoravo in Ericsson, per alcuni progetti dovevamo 

per forza utilizzare delle dll fatte da altri (e talvolta altri dovevano 

utilizzare quelle fatte da noi).



In questi casi ricevevamo (o davamo) insieme alla dll un file cartaceo 

(un file word o pdf) con i prototipi delle funzioni che si dovevano 

richiamare e una descrizione di cosa facesse la funzione. Le funzioni 

esportate dalle dll le chiamavamo utilizzando esattamente il metodo 

descritto nel link che ho postato precedentemente (non ricordo poi se 

con ddl fosse possibile ricavare sempre e comunque i prototipi completi 

delle funzioni esportate dalle dll, anche in assenza di documentazione)



Ciao,

Marco.


l'esempio che hai linkato è in C, ma sicuro che va giù liscio anche in C++? Non c'è da aggiungere extern "C" o qualcosa del genere da qualche parte, altrimenti il >compilatore si arrabbia coi simboli?



Andando a memoria, è possibile che sia chi crea la dll che debba fare in 

modo che la signature delle funzioni da essa esportate debba essere una 

signature "tipo C" e non una signature "tipo C++", altrimenti la 

chiamata potrebbe non funzionare, ma credo che il codice riportato nel 

link possa funzionare anche in c++, anche se non ho provato a compilarlo.



Ciao,

Marco.



PS: ovviamente in caso di utilizzo di Visual studio e dll i nomi delle 

funzioni da chiamare per linkare dinamicamente le librerie erano diversi 

da quelli riportati nell'esempio che sembra essere codice per unix,

ma il metodo era esattamente quello. Facendo una breve ricerca ho 

trovato che ancora oggi con visual studio le funzioni da chiamare

dovrebbero essere LoadLibrary (o qualcosa di simile) al posto della 

dlopen e GetProcAddress al posto della dlsym (e FreeLibrary al posto 

della dlclose).



Ciao,

Marco.


Il 11/02/19 15:12, 4ndre4 ha scritto:


Te lo ripeto,libero di non crederci




Il 11/02/19 08:53, 4ndre4 ha scritto:


La mia pazienza si sta quasi esaurendo,fai tutto per mettermi in cattiva 

luce come le piu meschine  delle persone,anche se sai che ho ragione.

Ma sono magnanimo e paziente,per cui ti rinfresco la memoria.

La discussione e' nata su un equivalente c/c++ al caricamento a runtime 

di una classe java.

Per l'esattezza una classe che e' un driver di db caricato da jdbc.

Ora,e anche il dottore lo ha spiegato,questi driver espongono la stessa 

interfaccia pubblica (derivano tutti da una unica interface)

La stessa cosa si puo fare tramite il caricamento dinamico anche in c/c++



void* h= dlopen("pippo.so", RTLD_LAZY);

typedef void (*f_t)(int);

f_t p = (f_t) dlsym(h, "entry1");

p(3);



Ovviamente occorre conoscere la firma degli entri point,cosi come in 

java occorre conoscere la firma dei metodi.

Ed ora aspetto la solita risposta che gia conosco.




 Ma e' un package manager non un dependency  manager



ah no? azz, avrei giurato che i package indicati nel progetto si 

chiamassero dipendenze :-)




 Sbaglio o ti ho risposto (risposta tagliata)?



no è che quando leggo già dalle prima riga, come in questo caso, un tono 

che mi indispone, sfanculo tutto il resto.




 c/c++



si può fare o si fa? perché in teoria si fa tutto nella vita, ma nella 

pratica non essendoci uno standard non è materialmente possibile 

applicare quello che scrivi per fare qualcosa di analogo al jdbc.


 p(3);



Questo che hai scritto NON e` il codice equivalente al caricamento dinamico di una classe Java. Hai semplicemente caricato una libreria ed agganciato una funzione. Tra l'altro, usi un puntatore a funzione (f_t) di tipo void e che prende un int. Ti sei costruito l'esempietto facile. Il caso reale (gia` da me menzionato) e` quello di una funzione che prende un argomento in input di tipo A e restituisce un altro valore in output di tipo T. Quegli A e T devono gia` essere visibili al tuo codice, quindi non potrai mai avere un caricamento dinamico puro, dovrai almeno far conoscere i tipi A e T alla tua applicazione mediante file header. 


 applicare quello che scrivi per fare qualcosa di analogo al jdbc.



Infatti, in C++, non si fa. E` inutile che enoquick ci giri attorno: in C++ NON esiste l'equivalente di JDBC.


 linker).



D'accordo.

Ma se quel typedef non corrisponde a niente, non ti dara' errore il 

linker ma, peggio, ti scoppiera' il programma a runtime.

Per cui sei in qualche modo obbligato a scriverti o importare un header 

che descriva quella dll. Va da se' che il programma compilato debba 

conoscere i simboli esportati da quel set di  dll che espongono la 

stessa interfaccia pubblica e soprattutto i *nomi* delle dll, sempre che 

nel frattempo da qualche dll non sia stato soppresso qualche entry point 

(che in windows, per stare dalla parte dei bottoni ho sempre linkato 

staticamente perche' succede, anche troppo spesso per i miei gusti) e 

che le dll non abbiano cambiato nome.

In java il principio e' lo stesso, con la differenza che non utilizzi 

classi concrete ma interface, le quali vengono risolte dalla jvm 

mediante il classpath. Le cui classi concrete che implementano 

quell'interface eventualmente si adoperano per caricare le dll di cui 

necessitano.

Secondo me c'e' un bel cazzo di differenza.

Nel senso che il programma Java nulla sa di quale dll deve caricare.

Ad esempio:

java.io.FileInputStream.open(String)

e' un metodo native, ovvero dipende da una dll, ma nella classe 

FileInputStream non c'e' traccia della dll da caricare, si arrangia la 

jvm istanziando un ClassLoader che si arrabatta tramite loadLibrary() 

dopo aver invocato il metodo native registerNatives();

Va da se' che se il classpath non contiene il necessario, che non 

dipende dal programma, ti manda in vacca con un bel UnsatisfiedLinkError.






 Sia per me che per te.



Ho forse risposto a te?

Fermo restando che questo /floor/ e' pubblico.

Quindi la risposta e': rogna.




 Ma sono magnanimo e paziente



Assolutamente no, sei un paranoico ignorante, che oltretutto

ha un sacco di tempo da buttare!




Il 12/02/19 00:42, rootkit ha scritto:


si puo fare e si fa.

Non esiste uno std per i db in c++

Chi costruisce un framework per gestire i db decide lui l'interfaccia 

pubblica dei driver.


Il 12/02/19 04:06, 4ndre4 ha scritto:


E' ovvio che la firma delle funzioni deve essere definita da qualche 

parte cosi come l'interface java e' definita da qualche parte.

Il problema non sussiste quindi.




Il 12/02/19 06:29, Madame Damentami ha scritto:


mke2fs




 

Beh, non e' proprio così. In java non ho bisogno di definire ne firme 

ne' nome della dll, mi limito ad un banalissimo import, al resto ci 

pensa la jvm, l'onere e' comunque di chi da servizio, non di chi lo usa: 

diametralmente opposto.

Con il piccolo particolare che l'interface Java la uso come una classe 

qualsiasi, senza preoccuparmi di chi da servizio all'interface, potrebbe 

essere una dll, una classe concreta, un servizio remoto o tutti insieme. 

Banalmete utilizzando una sruttura molto comoda che noi della banda 

Java chiamiamo proxy, tanto per confondere i russi. Non mi pare abbia 

corrispondenti in c/c++.


 si puo fare e si fa.



Non si fa, perche` al momento non esiste niente di equivalente a JDBC e lo sai bene. 




 parte cosi come l'interface java e' definita da qualche parte.



Ovvio il cazzo. Hai parlato di caricamento dinamico di classi e te ne vieni fuori con il semplice aggancio di una funzioncina con ritorno 'void'. Se la firma delle funzioni dev'essere definita, vuol dire che nel mio programma C++ cross-db dovro` avere tutte le firme di tutte le DLL che andro` a caricare. Il che vuol dire che supportare un altro db, significhera` ricompilare il code base. Uno standard come JDBC o un meccanismo come ilnessuno lo ha ancora definito per C++.


 (un file word o pdf) con i prototipi delle funzioni 



Eh?! Un pdf coi prototipi delle funzioni? E gli header che cosa ci stanno a fare?


 necessitano.

[...]



Ok, ma io su questo non mi pronuncio. Come dicevo non ho letto tutti i 

post del thread. Davo solo una risposta alla domanda:

"sei sicuro che non si debba linkare?"

(dove per linkare davo per scontato che si intendesse "linkare 

staticamente", visto che comunque, prima o poi, linkare si deve linkare)





Ciao,

Marco.


 del progetto.



Gli usanensi una storia cosi la inizierebbero:

"Il DrUgo entra in un bar..."

E' sufficientemente ermetica?

Io preferisco acmeista ma non si puo' volere tutto dalla vita.

Ora mi attacco alla bottiglia di Amaro Lucano.

-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 try catch o simili.



No.



ahahahahahahaAHAHAHAhaH!

"Poi te la spiego"

Un po' di originalita' che diamine.

Aggiungi un paio di librerie esterne ed avrai risolto.

Ma la  materia e' complessa attento

"aiutaTi da lei, famoso saggio,

ch'ella PUO' fa tremar le vene e i polsi".




quindi c'è qualcuno che l'ha fatto? mi fai vedere?

perché se il discorso è che ognuno il framework può farselo per conto suo 

si torna da capo al discorso teoria / pratica. 


 



Come piu' ti piace.

In /incarto/ di tutto rispetto.

Ma va nell'umido, nella plastica o nell'indifferenziato?



 mke2fs andrea



cosa vuol dire il comando linux scritto così??


 staticamente", visto che comunque, prima o poi, linkare si deve linkare)



Si faceva un parallelo tra Java e C++. In Java non linki neanche se 

vuoi. I metodi nativi, in genere, si affidano alla jvm sottesa che 

eventualmente invoca le dll che trova nel library path. Per cui ho 

utilizzato il termine linkare piu' o meno nei termini che dici tu.

Nota che ho utilizzato 'in genere' proprio perche' anche in Java puoi 

caricare, non linkare, una libreria nativa tramite System.loadLibrary, 

ma non ricordo di averne mai sentito la necessita' di farlo, salvo rari 

sporadici casi nei miei primi esperimenti jni piu' di 20 anni fa, non 

escludendo che ci sia qualcuno che lo faccia.


 'dovresti'.



Tecnicamente hai ragione, ma in termini pratici, quel 'potresti' fa presto a diventare un 'dovresti', quando un progetto va appena oltre il pezzo di cartone usato come esempio. 


 Marco.




 cosa vuol dire il comando linux scritto così??





$mke2fs andrea

mke2fs 1.44.1 (24-Mar-2018)

The file andrea does not exist and no size was specified.




 The file andrea does not exist and no size was specified.



?? LOL :D





L'ha presa larga....



-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.



Certamente, anche il dovere, pero', si scontra con il soggettivo senso 

del dovere, soprattutto se non e' prevista alcuna sanzione, ancor di 

piu' se c'e' di mezzo l'ignoranza!

:-)


 L'ha presa larga....



dai, però ammettiamolo come mascotte è quasi perfetto.


 



Ahhhhh.... ti indispone?

Che bella parola /finalmente/ !

Mi piace molto la tua logica.

Io (e intendo tu e qualcun altro) posso dire/scrivere quel che mi pare

anche usare termini non propriamente "civili" ma /NOI/ (intendesi tu ed

altri) siamo /NOI/ e voi "nun sete un cazzo".

Questa logica non fa una piega.

La ho vista usare da tanta gente nel _mestiere_ di informatico ed anche

oltre (i politici sono i veri maestri in questo).

E' sempre l'utonto che non rispetta le _specifiche_ se il programma

falla (nel senso di fallisce) e vengono fuori /perle/ che anche

i porci si rifiuterebbero di annusare.



Ma dovrei quotare me stesso rispetto a /floor/ , NG e risposte.

Ma forse Giovenale non aveva tutti i torti.



 Ahhhhh.... ti indispone?



yawhn... la peperonata si ripropone, ma te sei peggio della peperonata.




 pubblica dei driver.



Due cose che non si parlano hanno bisogno di un trasduttore.

Tale affare si chiama /interprete/ .

Se voglio parlare con un cinese.

O entrambi conosciamo una lingua comune

O io parlo cinese

O lui parla italiano.

Se arriva un russo sono guai!

Se poi dovesse arrivare un Navajo allora si che ti voglio!




La peperonata e' molto buona!

Se il tuo stomaco non la apprezza, condoglianze.

Non sai che ti perdi!





P.S.

Tra tu e quell'altro mettetevi d'accordo yawn o yawhn?

Nemmeno sui fondamentali siete d'accordo!

Iaunate secondo nessun rispetto di drivers e interfacce

Quando iauno nemmeno Charlize Theron mi tiene sveglio!



 Non ho mai compreso la necessita' dell'overloading dei metodi



Perche` non hai mai scritto abbastanza software per capirne l'utilita`, Sandrina Cara.


 



Tutti e due una /ciofeca/ uno mi costringe a , l'altro mi costringe a.

Ma, nel secondo caso, non sono costretto a /impararmi/ sarcazzo cosa!



 Guarda che non sei obbligato a rispondere, eh? Ogni tanto puoi startene anche zitto, 



Finalmente una notazione interessante.

Quando comincerai a stare zitto?

Ti Jessica Rabbit e' pieno il mondo!

Datti da fare!



 



Tutti e due una /ciofeca/ uno mi costringe a , l'altro mi costringe a.

Ma, nel secondo caso, non sono costretto a /impararmi/ sarcazzo cosa!

.




Hai ragione Tesssoro mio.

Smciuck!



Il 13/02/2019 23:20, Alessandro Cara ha scritto:

Mi scuso il mio newsreader ha fatto cose da bastioni di Orione.

Doppio invio non previsto.

Da utonto mi chiedo ma chi cazzo lo ha scritto sto affare (Thunderbird)?

4ndre4? (je piacerebbe ;-) )









-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)

hunderbird)


Il 13/02/2019 23:09, 4ndre4 ha scritto:


P.S.

Ripensandoci, come i cornuti.

Perche' non me lo spieghi tu Tessssoro mio!




Mi sembrate i fratelli Marx!

Quelli erano di piu' ma, capisco.

Fra voi manca Groucho!



 Infatti, in C++, non si fa. E` inutile che enoquick ci giri attorno: in C++ NON esiste l'equivalente di JDBC.



Ahhhhh.... maledetti ricordi.

Correva l'anno 1996.

Tomo su Java .

Di tutto e di piu' ma....

Domanda!? Dove sto linguaggio /parla/ con i dati scritti da qualche parte?

Nemmeno una riga!

Un linguaggio, in fondo, non deve parlare con dati scritti dove non si

sa e con tecniche talvolta astruse. A che serve?

Non serve finche' qualcuno non si accorge che esiste un territorio che

/deve/ mappare.

Fantastico!

Ma....

Ai fini del linguaggio serve?

Probabilmente si ma solo alla plebe che ara i campi

La metafora e': ara i campi=legge/scrive i dati da qualche parte.

Un linguaggio puro che e' nobilta' e/o poesia non ha alcun

interesse ad arare campi.

Se e quando qualche contadino lo riterra' opportuno

chissa'.... domani!

JDBC un acronimo nello J molto parziale e provinciale.

Che in c++ non esista un JDBC sta scritto nelle regole.

Se il c++ non riesce ad arare questo si e' un problema.

Ma....

Chissa' perche' io scrivevo sempre xDBC o ancora

megiio xLUCDF ( che significa: leggimi un cazzo di file)



 





Lo si fa ad esempio in ado od in odbc

Su un framework di classi simile ad jdbc visto che non esiste uno std 

simile a jdbc lo decide il progettista del framework sempre che voglia 

usare questa tecnica


 corrispondenti in c/c++.



Sara diverso da java ma il concetto non cambia

Si puo fare.

E si possono fare anche i proxy che e' pure un pattern




 



Certo che sei de coccio

tutte le dll hanno le stesse firme (sono i driver)

E come che se tutti i driver di jdbc ereditano dalla stessa interface 

cosa che effettivamente fanno.




 E come che se tutti i driver di jdbc ereditano dalla stessa interface 



Non e` la stessa cosa. Smettila di mettere a confronto cose che non c'entrano una ceppa l'una con l'altra. In C++ non hai l'equivalente di JDBC e non hai caricamento dinamico di classi come avviene in Java. Punto.


 E come che se tutti i driver di jdbc ereditano dalla stessa interface 





 Sara diverso da java ma il concetto non cambia



No, non e` lo stesso concetto. Smettila di scrivere puttanate. Si puo` fare? Un par de palle. Si parla tra l'altro di quel che c'e`, non delle tue fantasie.


 Sara diverso da java ma il concetto non cambia





 Lo si fa ad esempio in ado od in odbc



Se non esiste uno standard come JDBC, per C++, non lo si fa.


 Un linguaggio puro 



I "linguaggi puri" esistono solo nella mente di minus habens come te.


Il 14/02/19 02:02, 4ndre4 ha scritto:


O sei de coccio o lo fai per rompere i cosiddetti




 



Si puo fare perche lo hanno fatto

odbc e ado funzionano cosi




Il 14/02/19 02:04, 4ndre4 ha scritto:


Tu sei nella mente del progettista del framwork evidentemente.




 



Ma sei anche un campione di umorismo, che grasse risate!




 O sei de coccio o lo fai per rompere i cosiddetti



Anche tu avessi i cosiddetti, romperteli sarebbe l'ultima delle mie preoccupazioni. Ribatto a quel che scrivi, perche` scrivi stupidaggini.




 odbc e ado funzionano cosi



No. ODBC e ADO *NON* funzionano cosi`. 




 Tu sei nella mente del progettista del framwork evidentemente.



Non mi serve essere nella mente di nessuno. Che C++ non abbia niente di simile a JDBC, e` un fatto. ADO e ODBC *NON* sono l'equivalente di JDBC per C++. 




Il 14/02/19 07:28, 4ndre4 ha scritto:


si,funzionano cosi

caricano il driver in forma dll


Il 14/02/19 07:02, Madame Damentami ha scritto:


E tu sei campione di stupidita alla ennesima potenza

Non sei neanche capace di fare funzionare il cervellino,segui il gregge





Continua pure, evidentemente fare figure di merda ti piace.






 si,funzionano cosi



No, non funzionano cosi`, incompetente che non sei altro.



Rimane il fatto che non esistendo uno standard e soprattutto qualcuno 

che lo proponga, in C++ ognuno sa solo di casa sua, e si sviluppa 

all'occorrenza cio' che serve.

Alla faccia della standardizzazione, che per certi versi e' sinonimo di 

qualita' del software,


Il 15/02/19 04:31, 4ndre4 ha scritto:


senti ,non me ne frega niente se funzionano cosi o non cosi

il fatto e' che e' possibile mappare una classe su una dll




 il fatto e' che e' possibile mappare una classe su una dll



Col cazzo. Altra stupidaggine. In C++ non "mappi" proprio nessuna classe se una DLL. 




Il 15/02/19 05:05, Dr.UgoGagliardelli ha scritto:


Pro e contro dello std.

Prendiamo la grafica 2d per le gui ad esempio

Nonostante sia std in java, ne esistono un po,sia per c++ che java

Evidentemente le AWT std di java non andavano bene a qualcuno e lo capisco

Il rendering non e' che sia un gran che



https://en.wikipedia.org/wiki/List_of_platform-independent_GUI_libraries






IN c++ poi,grazie al non std,ce ne sono una ventina contro solo 4 di java.

IL fatto e' che ,ok che lo std sia bella cosa, ma non ha tutti i lati 

positivi.

Ad esempio frena l'innovazione.

Se standardizzare classi basi come string,map,thereads,ecc.. puo andare 

bene, standardizzare framework complessi come gui e db non e' mai stato 

un obiettivo del comitato.

Evidentemente ci hanno pensato su oppure hanno dato priorita allo 

sviluppo del linguaggio.


Il 15/02/19 06:57, 4ndre4 ha scritto:


ma certo,infatti qui hanno scritto cazzate:



https://www.tldp.org/pub/Linux/docs/HOWTO/translations/it/pdf/C++-dlopen.pdf




E persino in italico cosi lo possono leggere i diversamente letterati 

dall' inglese






Il 15/02/19 02:46, Madame Damentami ha scritto:


mke2fs




 un obiettivo del comitato.



Sbagliato. Non e` mai stato intenzionale. Se e` per questo, non hanno standardizzato per un lunghissimo periodo neanche il multithreading, assieme a molte altre funzionalita` necessarie, nonostante ci fosse una forte richiesta da parte degli sviluppatori (tanto e` vero che poi e` arrivato Boost). 




 ma certo,infatti qui hanno scritto cazzate:



Ehi, coglione, leggi il labiale: in C++ NON esiste un meccanismo standard per caricare classi come in Java; in C++ NON esiste un meccanismo simile a JDBC. Cerca di ficcarti questi due concetti nella testa e smettila di scrivere stupidaggini, da colossale incompetente quale sei. A quel link, ti spiegano semplicemente come usare un workaround, basandoti su una funzione che e` pensata per *FUNZIONI*, non classi. 




 sviluppo del linguaggio.



Certo che ci hanno pensato, e si vedono anche i risultati: oggi anche il 

device piu' stronzo che abbia un display anche minimo, ha anche un 

browser capace del rendering di HTML5.


Il 15/02/19 07:36, 4ndre4 ha scritto:


 >Col cazzo. Altra stupidaggine. In C++ non "mappi" proprio nessuna 

classe se una DLL.







Prima scrivi questa bella perla adesso vieni fuori:





in C++ NON esiste un meccanismo standard per caricare classi come in 

Java; in C++ NON esiste un meccanismo simile a JDBC





Hai scoperto H2O calda ,ma questo non preclude che non si possa mappare 

una classe su una dll.

D'altronte non ho mai sostenuto il contrario sul meccanismo std che non 

esiste.




 browser capace del rendering di HTML5.





Che non ha niente a che fare con il comitato c++


 Che non ha niente a che fare con il comitato c++



Evidentemente il comitato C++ preferisce andare a figa.

Che non e' molto innovativo, ma ha il suo porco fascino.



Non eri tu che citavi volpi e uva?

Se fai la volpe stai messo male. L'uva e' l'ultiam risorsa

Se fai l'uva con te ci faccio il vino, forse aceto, come vino

sei imbevibile e anche come aceto ...



-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Non eri tu che citavi volpi e uva?



Yawn. 


 non preclude che non si possa mappare 



Non lo si fa in maniera standard, PUNTO. Smettila di arrampicarti sugli specchi.


 Che non e' molto innovativo, ma ha il suo porco fascino.



Puo darsi


 java.



di quella lista ce ne saranno giusto tre degni di menzione. 


 





Mai sostenuto il contrario


Il 16/02/19 03:57, rootkit ha scritto:


Non lo so,non li ho provati tutti.

Conosco,per averli usati,le wxwidget e ultimate++




 Mai sostenuto il contrario



E allora taci. Cosa continui a ribattere?


 Non lo so,non li ho provati tutti.



Ovvio, parli a cazzo come al solito. 




 Puo darsi



Dico.



Alle 4.17 lo iaun ci sta tutto.

Azz! Rispondi malgrado lo sbadiglio.

Soprattutto, tuo solito, in modo geniale!



 



Perche e' possibile mappare una classe c++ su una dll

Io ho sostenuto solo questo,mica che ci fosse una interfaccia std per i 

driver db.

In realta esiste,imposti da MS, ma su odbc e su ado,che ripeto usano dll 

per i drivers

Se non ci credi vai a studiare.








 Dico.



Si,dici

Come ti ho suggerito fai una bella letterina e chiedigli le motivazioni.

Oppure scrivi direttamente al sign Stroustrup

Poiche non pubblica piu la sua email privata per via dei troppi messaggi 

puoi scrivere alla Columbia University o a Morgan Stanley sperando che 

ti risponda.




Il 16/02/19 07:57, 4ndre4 ha scritto:


Sei un pirla tagliatore:



Conosco,per averli usati,le wxwidget e ultimate++





Secondo te mi metto a provarli tutti ?


 Perche e' possibile mappare una classe c++ su una dll



Falso. 

Vai tu a studiare, imbecille.


 Come ti ho suggerito fai una bella letterina e chiedigli le motivazioni.



Perche` non gliele chiedi tu, cosi` la prossima volta che ti ficchi in una discussione, sei piu` preparato?


 Secondo te mi metto a provarli tutti ?



Io ho scritto che parli a cazzo, non conoscendo Java. Cerca di concentrarti. 

Tra l'altro, non ti sei neanche chiesto perche` tutti i framework UI piu` interessanti ed utili oggi cadano tutti nella lista non-C++.


 O sei de coccio o lo fai per rompere i cosiddetti



"Al mattino presto del giorno quattordici del mese primaverile di Nisan, 

avvolto in un mantello bianco foderato di rosso, con una strascicata 

andatura da cavaliere, nel porticato tra le due ali del palazzo di Erode 

il Grande entrò il procuratore della Giudea Ponzio Pilato."





Ed, ovviamente, non sei tu Ponzio Pilato



 Oppure scrivi direttamente al sign Stroustrup



Tu dici che Mr.Stroustrup abbia bisogno e per darsi una mossa aspetti le 

opinioni di uno sfigato come me? A sam a post! (siamo a posto! [ndr])


 opinioni di uno sfigato come me? A sam a post! (siamo a posto! [ndr])



Mai dare limiti alla Provvidenza, daje (continua potrebbe avere 

significato [ndr])



Il 16/02/2019 22:21, Dr.UgoGagliardelli ha scritto:


P.S.

Comunque!

Piglia il c++ inventati na cosa.

In quella cosa risolvi tutto quello che c'e' da risolvere.

che so .connect("ZioD'america")

Che roba e' "ZioD'america", fosse pure un xml, banalotto db gerarchico,

non interessa ho un /sarchiapone/ che sa tutto!

Ci pensa lui! btw na cosetta cosi' la avevo iniziata poi ho  preferito

ritirarmi alla osservazione di film porno!

Ahhhhhh! Sta cosa la avevo iniziata dopo aver visto un affare che si

chiamava Spring e Hibernate? (giusto/sbagliato? non ricordo, ancora campa?).

Una banale cosa da "minus habens" direbbe qualcuno.

Lo std lo ha sempre fatto il famoso mercato!

Il latte di pecora a .60 Euri e' lo standard!



 chiamava Spring e Hibernate? (giusto/sbagliato? non ricordo, ancora campa?).



Ma "ancora campa?" cosa, demente? Non sai manco dove stanno di casa quelle tecnologie. Quand'e` che cominci a stare zitto?


 opinioni di uno sfigato come me? A sam a post! (siamo a posto! [ndr])



Se fosse anche un minimo informato sul linguaggio che usa, saprebbe che lo stesso Stroustrup ha aspramente criticato il lavoro del comitato, affermando in una lettera del 2018: 



"Many/most people in WG21 are working independently towards non-shared goals. Individually, many (most?) proposals make sense. Together they are insanity to the point of endangering the future of C++."

[...]

The foundation begun in C++11 is not yet complete, and C++17 did little to make our

foundation more solid, regular, and complete. Instead, it added significant surface complexity and increased the number of features people need to learn. C++ could crumble under the weight of these – mostly not quite fully-baked – proposals. We should not spend most our time creating increasingly complicated facilities for experts, such as ourselves."

[...]

"We are on the path to something that could destroy C++. We must get off that path!"



https://www.theregister.co.uk/2018/06/18/bjarne_stroustrup_c_plus_plus/


http://open-std.org/JTC1/SC22/WG21/docs/papers/2018/p0977r0.pdf




Faccio un fioretto.

Staro' zitto quando anche tu ti muti!



Quelle cose che chiami "tecnologie" abitano nella casa Kaufmann

o in una manyatta Maasai.

Se tu riesci a vedere solo edilizia in economia non e' di certo

mia responsabilita'.



Mi fa ridere che vi siete accaniti con Delta11 per il Cobol.

Ancora campa?

I db gerarchici (sono esistiti?)

Ancora campano?

Una cosa che si chiamava Sybase

Ancore campa?

Per una volta vado contro la mia firma

Tu! Ancora campi?

Nessuno ha avuto il buongusto di sopprimerti?



 Nessuno ha avuto il buongusto di sopprimerti?



Fa' una cosa: sopprimiti da solo. Comincia col tacere. Farai un favore a molti. Per primo, te stesso. 



Confrontare Cobol e Sybase a Spring e Hibernate fa capire quanto poco tu ci capisca.


 Confrontare Cobol e Sybase a Spring e Hibernate fa capire quanto poco tu ci capisca.



Ma chi cazzo li ha confrontati?

Comincio a pensare che fra me e te lo scemo sia tu!

Al troll non rinuncio!



Io capisco meno di niente ma tu non capisci

(al tempo non lo avevi capito) che 11 puo' fare quattro!

Quindi....

Mumble....mumble.... un cazzo?



cfr. 
https://it.wikipedia.org/wiki/Cazzo


informati!



 Ma chi cazzo li ha confrontati?



P.S.

Figurati se nell'elenco avessi messo la Scuola Radio Elettra o il CEPU



 Ma chi cazzo li ha confrontati



Tu. Fai un favore a tutti e taci, idiota.


 
https://www.theregister.co.uk/2018/06/18/bjarne_stroustrup_c_plus_plus/




C Plus Fuss è stupenda :-D




 opinioni di uno sfigato come me? A sam a post! (siamo a posto! [ndr])



Non lo so,non ho mai scritto a Mr Stroustrup


 Non lo so,non ho mai scritto a Mr Stroustrup



Vatti a studiare cosa Mr Stroustrup pensa del lavoro del comitato C++.




 



Se aggiorni la dll senza toccare l'interfaccia pubblica non serve 

ricompilare il chiamante

Se tocchi l'interfaccia pubblica il chiamante va ricompilato

Tutto questo con o senza caricamento dinamico.




 LOL :) Che cazzo sono i "servizi utente"? :) Guarda che compilatori e giochi 3d li scrivi benissimo anche in Java eh? 



Se i giochi 3D li scrivi benissimo in Java allora ha ragione anche lui a dire che si interfaccia benissimo ai database in C++



Hai ragione. Completamente ragione.

E' da idioti darti seguito.

Non lo faro' piu', fra individui della stessa specie spero ci si comprenda.



 Hai ragione. Completamente ragione.



Bravo. Taci. 


 Se i giochi 3D li scrivi benissimo in Java allora ha ragione anche lui a dire che si interfaccia benissimo ai database in C++



In Java, se vuoi scrivere un gioco 3d, lo fai benissimo. D'altronde OpenGL e` cross-platform (vedi 
https://libgdx.badlogicgames.com/
). Senza considerare che Java e` uno dei linguaggi eletti per lo sviluppo mobile, ovvero per la stragrande maggioranza di piattaforme. Da chiarire che C++ si interfaccia benissimo ai database. Si stava parlando dell'equivalente di JDBC, che in C++ non esiste.


Il 17/02/19 11:24, 4ndre4 ha scritto:


Peccato che opengl non lo considera quasi nessuno per i giochi 3d

Su pc si usano le directx sotto win32

La maggior parte dei giochi 3d vanno li (lasciamo stare le console) e 

nessuno,tra i big,usa java per questo.

E come dire che un webservice sotto c++ va benissimo,il che e' vero,ma 

non lo fa quasi nessuno.

Magari se qualcuno vuole ottenere delle performance usa c++ anche li,ma 

non e' la maggior parte dei casi.

JDBC,non e' ti e ancora entrata in zucca che non ho mai affermato che 

esista un equivalente in c++ visto che non esiste nella lib std c++ un 

qualcosa di equivalente ?

Infatti la discussione era sul mapping di una classe c++ in dll per 

ottenere un caricamento dinamico simil java.

Cosa che si puo fare benissimo nonostante i fatti che tu continui a negare.




 



Se non ricordo male,

se l'hai linkata staticamente all'eseguibile, dopo la modifica quanto 

meno la devi rilinkare sia che tu tocchi l'interfaccia pubblica o meno.



E se il chiamante lo hai dato al cliente e quando fai gli aggiornamenti

vuoi dare al cliente solo la libreria senza ridargli l'eseguibile 

"chiamante" potrebbe essere un po' difficile farlo in caso di link statico.



Ciao,

Marco




 



Non linkata staticamente ma come libreria dinamica



Il 16/02/19 16:11, 4ndre4 ha scritto:


Sara,comunque i contracts li aspetto da piu di 20 anni,dai tempi di 

eiffel per la precisione,e finalmente saranno in c++20

Aspetto ancora i new types ed i class namespace poi sono a posto.






 Sara,comunque i contracts li aspetto da piu di 20 anni,



Continua ad aspettare.


 esista un equivalente in c++ 



La discussione era su quello. Sei tu che, come al solito, sposti il focus da un'altra parte perche` ti fa comodo, con argomenti fantoccio. No, in C++ non puoi caricare dinamicamente una classe come fai in Java, nonostante il tuo battere i pugnetti.


 





La discussione non era su jdbc ma sul mappare ..

E si puo,visto che ti postato un url che ti spiega come fare.


 E si puo,visto che ti postato un url che ti spiega come fare.



No, hai postato un URL che implementa un accrocchio assolutamente orribile e studiato per le funzioni.


Il 18/02/19 07:31, 4ndre4 ha scritto:


A onesta intellettuale sei una merda

Se affermassi che 1+1=2 saresti capace di scrivere che fa 3

Buon mke2fs




 Diable e Fallout4.



Va che stai pestando l'ennesimo merdone, "Diable" è stato portato su Nintendo Switch qualche mese fa, e "Fallout4" usa l'engine di Skyrim, anch'esso su Switch. Sei circa fermo a una decina abbondante di anni fa, ora si usano framework, nessuno usa "le direct X" direttamente. 

Uno dei più utilizzati e famosi è ad esempio Unity, che gira sulle maggiori piattaforme sia console che no, ed è in C#, quindi se pensi di tirare fuori i giochi per portare avanti questa rissa da bar stai pestando una merda di dimensioni macroscopiche.



  ngw






 A onesta intellettuale sei una merda



Tu che accusi gli altri di essere disonesti intellettualmente, e` come Jack Squartatore che accusi qualcun'altro di essere un violento. Viscido paraculo bugiardo e rigirafrittate che non sei altro. 



No, guarda che ti stai sbagliando di grosso. Quello che dice che 1+1 fa 3 sei *TU*. Io ti sto dicendo che fa *2*. 


 



Ma che bello,e chi mi dici di unreal engine e cry engine ?




Il 18/02/19 09:05, 4ndre4 ha scritto:


mke2fs




 Ma che bello,e chi mi dici di unreal engine e cry engine ?



Che sono framework anch'essi. In che modo questo cancella l'esistenza di Unity fammi capire? Sei tu che devi dimostrare che non si sviluppano giochi con linguaggi managed come ad esempio C#, che è quello che stai dicendo ormai da un paio di mesetti. Io ti ho appena dimostrato che è vero il contrario.



  ngw


 Ma che bello,e chi mi dici di unreal engine e cry engine ?



Eccolo che devia ancora dove gli pare :)



"Non esiste frutta di colore rosso!"

"Hey, cosa dici? Esistono ciliegie, fragole e angurie!"

"Ah, si`? E che mi dici delle banane e degli ananas?"



Patetico buffone.




 mke2fs



Ma chi credi di offendere con quest'altra buffonata? Si vede che hai un cervello contorto, eh? 





Pensa quando scopre che Unity lo puoi programmare in Javascript.



  ngw


Il 18/02/19 09:21, 
n...@nofeed.org
 ha scritto:


Prima mi accusi di non sapere che oggi per i game 3d si usano degli 

appositi motori ed ora mi accusi di non sapere che un motore puo essere 

scritto in un linguaggio diverso da C/C++

Ed ora la mia risposta:

e quando mai ho scritto il contrario ?




 e quando mai ho scritto il contrario ?



Quando avresti (a modo tuo, come sempre, cioe` alla cazzo) separato i due ambiti: quello in cui si userebbe C++, e quello dei "servizi utente" (??) in cui si userebbe Java. Fosse anche che tu non stessi parlando di Java, il merdone l'hai pestato. 



Da nessuna parte, errore mio.

Ripetiamo tutti insieme quindi: i giochi si fanno in C++ come si fanno con linguaggi managed, chiunque sostiene che C++ abbia qualche genere di vantaggio è quantomeno disinformato, al peggio in malafede, visto che il framework leader del mercato usa C# e Javascript senza apparentemente nessuna differenza qualitativa - anzi, l'adozione di linguaggi a più alto livello ha portato team estremamente piccoli, come gli ormai leggendari Team Cherry, a sfornare capolavori che altrimenti non avrebbero potuto completare.

Visto? Senza bisogno di 200 post di io ho detto e tu hai detto, si va tutti d'accordo molto velocemente seguendo dati di fatto, senza sviare e portando prove oggettive.



  ngw


Il 18/02/19 14:32, 
n...@nofeed.org
 ha scritto:


Bene,amici come prima




Il 18/02/19 02:29, 4ndre4 ha scritto:


sei un ignorante

Ci sono gia g++ e comunque sono in c++20




Il 18/02/19 10:57, 4ndre4 ha scritto:


E tu ti rendi conto che sei un essere viscido che non sa tenere una 

discussione ?

Con tutti i post fatti non  c'e uno,e dico uno in cui tu abbia 

argomentato tecnicamente qualcosa a nome tuo oppure un post che secondo 

te ho ragione

Ovviamente non e' cosi,e le belle perle fatte,tagliate,ed addomesticare 

poi a tuo uso consumo sono memorabili.

E' tutto un NAIN per te,gli altri sono perfetti incompetenti (esclusi 

gli amichetti che ti appoggiano).

Scendi dal piedistallo razza di essere viscido,meglio perdere che 

trovare persone come te.









risponderà: "e quando mai ho scritto il contrario?"



ed in fondo avrà ragione, perché nella sua dialettica fumosa non dice mai 

qualcosa di abbastanza consistente da essere il contrario di qualcosaltro.




 Ci sono gia g++ e comunque sono in c++20



Che il C++ sia sulla via del crollo lo dice Stroustrup, non io. 


 trovare persone come te.



Ah, per uno come te sicuramente.




 gli amichetti che ti appoggiano).



"NAIN"? Complimenti per le conoscenze linguistiche (che fanno il paio

con quelle di informatica).

E comunque non mi sembra il caso di generalizzare: nessuno ha mai

sostenuto che "gli altri sono perfetti incompetenti": ci si riferiva

espressamente a te.




Il 19/02/19 01:34, 4ndre4 ha scritto:


Le tue mutande crollano




 



Sbagliato, c'e  anche Alessandro




 E' francese coglione



È tutto un "nano" per te? Che vuol dire? Io conosco almeno un nano esperto in sicurezza informatica e sicuramente molto competente.



  ngw


 





Come al solito dai ampia dimostrazione di non aver capito un cazzo.



E' una persona talmente squallida da non sapere ammettere la propria

ignoranza e i propri errori nemmeno davanti all'evidenza.






 Le tue mutande crollano



"What's all the C Plus Fuss? Bjarne Stroustrup warns of dangerous future plans for his C++"

https://www.theregister.co.uk/2018/06/18/bjarne_stroustrup_c_plus_plus/




Sorry.








 Sbagliato, c'e  anche Alessandro



Chi, il Cara? Il troll?




 È tutto un "nano" per te? Che vuol dire? 



Ma le lingue dove le avete imparate? Non sapete neanche cosa significa "fack"!




Il 19/02/19 11:01, 4ndre4 ha scritto:


Appunto,le tue mutande crollano

Stroustrup mette solo in guardia,non che c++ sia sulla via del crollo.

Esiste una bella differenza tra i due concetti.




Il 19/02/19 07:53, Madame Damentami ha scritto:


Essere inutile,rispondimi su quello che ti ho scritto invece che 

blaterare a vanvera.




Il 19/02/19 07:33, 
n...@nofeed.org
 ha scritto:


Il nano non e' mio.




Il 19/02/19 07:50, Madame Damentami ha scritto:




 



Proprio lui,per te anche lui e' un essere di disprezzare





ti ha chiesto cosa vuol dire "è tutto un nano". tu hai scritto "è tutto 

un nain" e che hai derivato dal francese. non scappare subito nella tana, 

si sta solo cercando di capirti.


 Stroustrup mette solo in guardia,non che c++ sia sulla via del crollo.



E` chiaro che non hai capito quel che c'e` scritto in quell'articolo. Non mi meraviglia, vista la tua conoscenza delle lingue. 


 Proprio lui,per te anche lui e' un essere di disprezzare



E` un noto troll, in questo ng. Solo tu puoi pensare di allearti con un demente di tale grandezza. D'altronde "great minds think alike".




Il 20/02/19 01:48, 4ndre4 ha scritto:


L'ho letto e di fretta,non ho trovato niente di cio

Posta la frase che la  cerco




 Posta la frase che la  cerco



Figurati se cerco una conferma da parte tua. Leggiti l'articolo di nuovo. 



Quali parti di "dangerous future plans" e "Together they are insanity to the point of endangering the future of C++" e "We are on a path to disaster though enthusiasm and design-by-committee" non ti sono chiare?




 



Quello che vuoi

In genere le persone le rispetto non mi metto ad insultarle a vanvera 

come fai tu.

PS

Io non mi sono alleato con qualcuno.

Semplicemente tu ad Alessandro non vai molto a genio.

O speravi di essere simpatico a tutti con il carattere di merda che ti 

ritrovi ?


 Semplicemente tu ad Alessandro non vai molto a genio.



Ma figurati quanto cazzo me ne frega di stare simpatico ad un troll imbecille. Io carattere di merda? Non mi conosci imbecille e faresti bene a guardarti allo specchio: sei assolutamente insopportabile. Mi chiedo veramente che razza di persona tu sia nella vita vera.  


Il 20/02/19 08:40, 4ndre4 ha scritto:


Veramente mi chiedo proprio la stessa cosa di te




 Veramente mi chiedo proprio la stessa cosa di te



Dovresti chiederti perche` ti danno tutti dello scemo, invece. 




Il 20/02/19 12:13, 4ndre4 ha scritto:


Pensi che me ne freghi qualcosa delle critiche di altre persone che si 

sono dimostrate fazione quasi quanto te ?




 



Non sono sicuro di aver capito quale sia per te la differenza

tra "linkare come libreria dinamica" e

"usare il metodo descritto nei

post precedenti" (quindi usare LoadLibrary, GetProcAddress, ecc.).







Ciao,

Marco.


Il 20/02/19 07:01, 4ndre4 ha scritto:


Il significato di quello che hai scritto dipende dal contesto in cui 

sono inseriti

Quando avro tempo riprendero in mano quel documento e poi ti rispondero








Il 20/02/19 14:19, Marcoxxx ha scritto:


Ok, in linux (faccio esempio di questo ma si puo fare anche in win)

ci sono tre modi per linkare



1) modo statico, la libreria viene inclusa nell'eseguibile generato

2) modo dinamico,la libreria viene collegata logicamente all'eseguibile 

ma comunque non inclusa in esso

3) a runtime, la libreria viene caricata  da un processo.





Se ho capito bene



1) ok e' il linking statico

3) e' quello che si e' visto nei post precedenti



Mi chiariresti il punto 2)  con qualche esempio piu' concreto ?



In particolare il "collegata logicamente".





Se intendi che c'e' un modo a tempo di compilazione per dire al tool

usato che l'eseguibile e la dll devono in qualche modo "collegarsi tra

di loro", ma non essere inclusi l'altra nell'uno, se non ricordo male ai 

tempi in cui lavoravo in Ericsson e

facevo queste cose il tool che si usava (Visual Studio 6) consentiva di 

fare qualcosa del genere "a tempo di compilazione". Cioe' c'era una voce 

"collega dinamicamente" o qualcosa del genere che creava qualche tipo di 

legame  "non statico" tra l'eseguibile e la dll.



Pero', sempre se non ricordo male (sono passati circa 15 anni da quando 

facevo queste cose) avevamo provato a farlo, ma  poi in realta' quando 

si usava questa opzione, qualche tipo di legame si creava tra 

l'eseguibile e la dll per cui una volta che la dll si modificava andava 

comunque "rilinkata".



Anche perche' se non si creasse nessun tipo di legame, praticamente non 

ci sarebbe differenza tra il caso 2) e il caso 3).



Mentre nel caso 3) l'eseguibile e la dll potrebbero anche teoricamente 

essere creati da persone diverse o anche da aziende diverse (cosa che, 

sempre se non ricordo male, avveniva, almeno che fossero create da 

persone diverese). Questo mi sembrerebbe un po' difficile da fare nel 

caso 2).



Ciao,

Marco.




 Quando avro tempo riprendero in mano quel documento e poi ti rispondero



Ma anche 'sti cazzi. Non hai proprio capito: la tua risposta la devi mandare a Stroustrup, non a me. A me frega cazzi di sapere l'opinione di un cretino incompetente come te. 




 sono dimostrate fazione quasi quanto te ?



Faziose? Chi ti dice che sei uno scemo, non e` fazioso; sta semplicemente constatando la verita`. 




Il 21/02/19 01:39, 4ndre4 ha scritto:


Ed allora che cavolo vuoi ?

A me frega cazzi della tua opinione




Il 21/02/19 01:39, 4ndre4 ha scritto:


Prendiamo un coglione qualunque

Madam e come si chiama

Gli ho fatto una domanda tecnica,almeno puo rispondere con un parere se 

proprio non vuole buttare giu codice.

Non  ha risposto.

Ora posso arguire che non abbia conoscenze per dibattere.

Ma se non ha conoscenze per dibattere come fa a giudicare ?

Risultato,e' solo un coglione che gli piace insultare gli altri per 

soddisfare l'ego del suo piccolo cervellino.

Ed io dovrei affermare 'oddio sono uno scemo' per idioti di questo stampo ?

Poi ci sei tu

E sei talmente fazioso che della tue opinioni non so che farmene.




 Madam e come si chiama



Poveraccio. Sei proprio uno schifo di uomo.

E qui dentro il coglione ti stai dimostrando tu.






 A me frega cazzi della tua opinione



Non ti stavo offredno nessuna opinione, imbecille. Ho risposto ad Ugo dandogli un riferimento a quello che scrive Stroustrup, che e` un genio in materia, non un cretino incompetente come te. Sei intervenuto blaterando le tue solite cazzate, ti ho puntato alla lettera di Stroustrup, hai detto che la leggerai e mi risponderai in merito. Ma chi se ne fotte di cosa pensi tu? La risposta mandala a Stroustrup.




 Madam e come si chiama



Non ci crederai, ma ci ha preso su tutto quello che ti ha detto. Guarda che non sono gli altri ad essere "faziosi" (faziosi de che? A chi interessa formare una "fazione" contro un colossale scemo come te?), sei tu che devi smetterla di scrivere stupidaggini.


Il 21/02/19 09:59, 4ndre4 ha scritto:


facciamo un  esempio:

se due persone che sono medici chirurghi discutono di alta chirurgia

come fa una persona che non ne sa niente di chirurgia o medicina in 

particolare giudicare chi ha ragione ?

Non puo ovviamente,non ha le conoscenze per affermare che il chirurgo1 

abbia ragione,cosi come con il chirurgo2.

Quindi se questa persona dicesse ad uno dei due chirurghi che e' uno 

scemo incompetente e' semplicemente un inetto lui stesso.




 se due persone che sono medici chirurghi discutono di alta chirurgia



Il problema di fondo e` che tu NON sei l'equivalente informatico di un chirurgo e quello che tiri fuori nei tuoi commenti NON e` l'equivalente di "alta chirurgia". Sei un incompetente e non sai ragionare.



Tu, qui dentro, sei poco meno di un portantino che, lui, si pretende di entrare in un ospedale e parlare di alta chirurgia con dei chirurghi.


 scemo incompetente



Per capirlo, nel tuo caso, non servono alte competenze informatiche.




Il 21/02/19 10:59, 4ndre4 ha scritto:


Noi stavamo discutendo sul mapping di una classe c++ su una dll

Se il tizio non ha la piu pallida idea sull'argomento e' l'equivalente 

della persona nella metafora  spiegata prima

E' inutile che giri attorno senza dare spiegazione ma solo insulti.




 Noi stavamo discutendo sul mapping di una classe c++ su una dll



No, non stavamo discutendo di quello. Ce l'hai portata tu, la discussione, su quello, perche` cerchi sempre un sistema per svicolare dal punto vero. 

A quel punto, non ti devi meravigliare se qualcuno (chiunque) ti da` del coglione. 

Come detto, sei un portantino che pretende di parlare di alta chirurgia con dei chirurghi; insisti, batti i pugni, sbraiti nel corridoio dell'ospedale, nonostante ti venga detto di chiudere la porta e andartene. A quel punto, anche una vecchia ricoverata di 100 anni si accorge che sei un cretino, eh?


 





Ma smettila

Ma sei capace a discutere seriamente senza insultare qualcuno ?


Il 21/02/19 09:58, 4ndre4 ha scritto:


bene,amici come prima




 qualcosa di abbastanza consistente da essere il contrario di qualcosaltro.



Un grande allora!

Ma questo e' un posto da /Grandi/



Stasera guardavo una trasmissione.

Un tal Stefano Massini ha declamato una cosa sul /vaffanculo/

dopo aver citato Schopenhauer (che sembra avesse un caratteraccio).

Io mi accontento di poche e piccole cose ma la ho trovata

interessante molto piu' di piccoli io che vedo circolare qui

(ovviamente e' compreso /anche/il mio IO )







-- 

ac (x=y-1)

Aborro il Killfile

(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


 Continua pure, evidentemente fare figure di merda ti piace.



Se c'e' qualcuno che non segue le tue battute, battutine,

battutacce (nel senso di brutte e non di particolarmente sagaci)

ti inalberi?

Cerca di fare la /signora/ come ti firmi

o forse la Madame e' solo riferita a bordello?

Che roba hai? Bona?  ;-)



 Ma sei capace a discutere seriamente senza insultare qualcuno ?



Certo. Lo faccio tutti i giorni nelle mie riunioni di lavoro, con gente che rispetto perche` capace e intelligente. I cretini come te invece, li tratto in quanto tali. 




 bene,amici come prima



Mai stato amico tuo. Non ci tengo.


Il 22/02/19 04:06, 4ndre4 ha scritto:


appunto,amici come prima

prima eravamo 0 adesso siamo 0




 appunto,amici come prima



Hai abbondantemente rotto i coglioni.


 



Il lavapiatti nel bar di londra,ecco cosa fai


 



Un essere totalmente inutile

Non ha mai fatto una discussione sulle proprie affermazioni.

Mai, una risposta tecnica, od una impressione,il nulla del nulla.




Il 22/02/19 06:32, 4ndre4 ha scritto:


Ma che bello rosicar..




 Ma che bello rosicar..



Io, eh? :) 

Quanto e` bello convincersi di far rosicare gli altri...




 Il lavapiatti nel bar di londra,ecco cosa fai



Si`? Vienimi a trovare, cosi` te lo faccio vedere. Stai attento, pero`, i termini tecnici che usiamo potrebbero spaventarti.




 Mai, una risposta tecnica, od una impressione,il nulla del nulla.



Cioe` esattamente cio` che tu e Cara siete.


 Da quando l'accusato deve sapere di cosa e' accusato ?



Da sempre, è nel suo interesse.





-- 

The three most dangerous things in the world are a programmer with a 

soldering iron, a hardware type with a program patch and a user with an 

idea.


 Da quando l'accusato deve sapere di cosa e' accusato ?



LOL :) Questa me l'ero persa. Un'altra chicca da incorniciare. 



E' una frase che lo qualifica in modo inequivocabile.



 



Infatti,ma non e' l'accusato che deve scoprire di cosa e' accusato




Il 22/02/19 06:54, 4ndre4 ha scritto:


mke2fs




 



Solo nei romanzi kafkiani succede che qualcuno che venga accusato deve 

scoprire di cosa e' accusato.

Nei normali paesi democratici se si accusa qualcuno ne vengono date  le 

motivazioni e vengono esposte prove.

Ma forse tu vivi in un romanzo di Karka






Il 22/02/19 08:16, 4ndre4 ha scritto:


Solo nei romanzi kafkiani succede che qualcuno che venga accusato deve 

scoprire di cosa e' accusato.

Nei normali paesi democratici se si accusa qualcuno ne vengono spiegate 

le motivazioni,esposti luoghi e date, e soprattutto vengono presentate 

prove.

E la difesa ha il diritto di controbattere a quello presentato dall'accusa.

Ma tu vivi in un romanzo di Kafka,il surreale per te e' reale.

Ritorna a lavare i piatti nel bar di Londra dove lavori

e smettila di sniffare cosi almeno forse ritorni nel mondo reale.






Nei normali paesi democratici



Ahò e basta. Hai rotto il cazzo, demente.


 



Rivolgendosi ad un ipotetico tribunale l' accusa si ritira per mancanza 

di prove.

Ora la difesa puo avviare pratica di diffamazione per avere dato dello 

scemo e del demente al mio cliente.





Anche in questo caso dai ragione a chi ti ha fatto osservare l'idiozia 

della tua frase.

Vale quanto ti ho appena detto: fatti vedere da uno bravo.



P.S. come polemista vali davvero zero.



>>>>  
http://www.bb2002.it
 :)  <<<<<

........... [ al lavoro ] ...........


 P.S. come polemista vali davvero zero.



Come vuoi

Processo concluso

Imputato assolto per mancanza di prove presentate




 



Aggiungi altro per arrivare a 1000 :)




Was F4ck u M4therf4kker, semmai


 



mke2fs e' il nuovo gergo





C'è una RFC al riguardo ?



 C'è una RFC al riguardo ?



Request For Caciara?



  ngw


 



Non l'ho ancora presentata