Hehe :-)
Tuka naistina ima avangardni momenti, koito granichat s kretenija :-))))
NO ! Edin bivsh kolega ( Kamen ot Code Assistance, deto posle otide v M$ )
pokaza edin *realen* primer za neshto na pryv pogled silno kretensko, no vse
pak ..... ( koda dolu e silno shematichen, ignore the details )
section A:
x = 0;
section B:
if (x != 0)
x = 0;
Vaprosa beshe - namerete scenarii, v koito coda ot section B se izpylnjava
po-byrzo (!!!) ot coda ot section A
Ta sled suma ti vreme se stigna do izvoda, che ako x e promenliva na druga
mashina i po RPC se raboti s neja, to cache-a na RPC-to bi mogyl byrzo da
get-ne stoinostta i, no mnoooogo po-bavno da ja set-ne. Taka che v sluchaite
kogato x == 0 vaobshte njama smisyl da se set-va nanovo syshtata stoinost.
Takyv kod, razbira se, e ultra mega izvrashtenie, no - vse pak e realen
primer ot implementacijata na PRC runtime-a za NT4/NT5
S ochakvane da byde oplut zashto puska tova v Jokes:
Manski
----- Original Message -----
From: Martin Marinov <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, November 14, 2000 12:59 PM
Subject: [JOKES] MathLib
> Chesto mi se sluchva da svalqm ot iNet razni math libs, i obshto vzeto
> mislq che v tqh ima kakvo da se vidi ot chisto prakticheska gledna
> tochka, no eto na kakvo se natyknah na skoro:
> (za kratkost sym slojil declaraciite i implementaciqta na edno mqsto)
>
> typedef struct vector_3d_typ
> {
> float x, y, z;
> } point_3d,vector_3d,*point_3d_ptr,*vector_3d_ptr;
>
>
////////////////////////////////////////////////////////////////////////////
//////////////
> // returns the magnitude of a vector
> //
>
////////////////////////////////////////////////////////////////////////////
//////////////
> float vec_magnitude(vector_3d v)
> {
> float temp = v.x*v.x + v.y*v.y + v.z*v.z;
>
> if(temp >= 0)
> return (float)sqrt(temp);
> else
> return (float)sqrt(-temp);
>
> }
>
>
////////////////////////////////////////////////////////////////////////////
//////////////
> // normalize a vector (magnitude == 1)
> //
>
////////////////////////////////////////////////////////////////////////////
//////////////
> void vec_normalize(vector_3d *v)
> {
>
> float temp = v->x*v->x + v->y*v->y + v->z*v->z;
> float magnitude = sqrt(v->x * v->x + v->y * v->y + v->z * v->z);
>
> if(temp >= 0)
> magnitude = sqrt(temp);
> else
> magnitude = sqrt(-temp);
>
>
> v->x = v->x / magnitude;
> v->y = v->y / magnitude;
> v->z = v->z / magnitude;
> }
>
>
////////////////////////////////////////////////////////////////////////////
//////////////
> // computes the dot product between u and v
> //
>
////////////////////////////////////////////////////////////////////////////
//////////////
> float vec_dot_product(vector_3d u, vector_3d v)
> {
> return( (u.x * v.x) + (u.y + v.y) + (u.z + v.z));
> }
>
>
////////////////////////////////////////////////////////////////////////////
//////////////
> // computes the distance between a and b
> //
>
////////////////////////////////////////////////////////////////////////////
//////////////
> float vec_distance(point_3d a, point_3d b)
> {
> float dx, dy, dz;
> float temp;
>
> dx = b.x-a.x;
> dy = b.y-a.y;
> dz = b.z-a.z;
>
> temp = dx*dx + dy*dy + dz*dz;
>
> if(temp >= 0)
> return (sqrt(temp));
> else
> return sqrt(-temp);
>
> }
>
> dano ne rabotim nqkoga s programist, pishesht tolkova "korekten" i
> "efektiven" code:))
> Martin
>
>
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> * To unsubscribe from this list, send e-mail to
[EMAIL PROTECTED]
> without subject and with message body "unsubscribe jokes [EMAIL PROTECTED]"
> (without quotes)
> * To subscribe to this list, send e-mail to [EMAIL PROTECTED]
> without subject and with message body "subscribe jokes [EMAIL PROTECTED]"
> (without quotes)
> * Mails to this list should be sent to [EMAIL PROTECTED]
> * If you experience any problems contact [EMAIL PROTECTED]
> * Archives available at [EMAIL PROTECTED]
>
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
* To unsubscribe from this list, send e-mail to [EMAIL PROTECTED]
without subject and with message body "unsubscribe jokes [EMAIL PROTECTED]"
(without quotes)
* To subscribe to this list, send e-mail to [EMAIL PROTECTED]
without subject and with message body "subscribe jokes [EMAIL PROTECTED]"
(without quotes)
* Mails to this list should be sent to [EMAIL PROTECTED]
* If you experience any problems contact [EMAIL PROTECTED]
* Archives available at [EMAIL PROTECTED]
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=