> > First, let's call it jQuery, not JQUERY, so no one thinks
> > you're shouting. :-)
>
> I have no idea what the other messages you're talking
> about are, but they weren't from me.

Like I said - Its silly. Lets agree to drop this. :-)

>  and I wrote the first email client
> for PCs in 1982. It had a complete GUI using character
> mode graphics and supported all the email services of
> the day along with point-to-point email transfers.

Oh, which was that?

I wrote Silver Xpress, the 3rd client/server mail package, after
TAPCIS (client only) and Sparky's QMAIL (client/server and only by a
few weeks).  I was #1 and made the most money. :-) I would of known of
all PC email products and most of the corporate only packages.  Are
you reference to a X.400 package? or some Novell MHS package?  Can't
be SMTP, or was it?  The first SMTP package for the PC?  Can't be -
SMTP isn't P2P.

SX was written for all the online hosting systems atleast 22 BBS
systems including all the top million dollars BBS systems like PCBOARD
and Wildcat!.  In 1990, I wrote Platinum Xpress, the P2P mail/file
transfer system for Fidonet.  By 98, wanting to complete the total
mail framework, I brought Wildcat! to complete the picture.

Before HTML, there were various tag based rendering technologies.  I
was writing Gold Xpress (The GUI version of SX) when RIP came out and
most of the major online hosting systems added RIP support, including
SX.   If HTML did not come out and prevail, this would be a RIP world.

Anyway, what "First PC Email Package" did you write?  Wow! I thought I
know all early cyberspace pioneering players in the PC mail market at
the time. :-)

>> Not the same.  You modularized the code, thus creating a new
>> function stack prolog and epilog.
>
> I don't follow you here. It's just an example of how
> you would translate a C idiom (forgive me if the syntax
> is off, my C is rusty):
>
>    function test() {
>       int i = 1;
>       // nested scope
>       {
>          int i = 2;
>          log( i );  // logs "2"
>       }
>       log( i );  // logs "1"
>    }
>
> into JavaScript. The nested anynomous function
> introduces a local scope that works just like the
> inner block in C. (The syntax and implementation are
> different, of course, but the concept is the same.)

Its how you would do it in JS, but thats because you basically
modularized it with a function which inherits creates a local scope.
It has its new prolog (pushing variables into the stack) and epilog
(pulling varialbles off the stack).   A function atleast forces epiloq
because it *ALWAYS* returning a value whether you use it or not.

The C version you pointed out, well, first, is illegal. This is new to
C++.

Anyway, it would be local scope without the function prolog/epilog
overhead.  But like all OOP languages, include JS,  it will have any
automatic destruction of class objects.

But more importantly, it isn't natural.  (Sure if that is what you
want in JS), but in a normal language that suppose local scoping:

   void test()
   {
       int i = 1;
       if (whatever) {
          int i = 2;
          log( i );  // logs "2"
       }
       log( i );  // logs "1"
    }

It is just natural coding.  Not inline functions required.  So its not
the same :-)

>> I believe you nean undefined not the string "undefined."
>
> It's funny you should mention that, because I actually
> paused when I wrote it and thought about whether I
> should use the quotes or not.

Well, that's what I mean.  I would had not pointed it out, but you
pissed me off there for a minute.  That is what I meant by "silly" - a
wasted comment because I knew what you meant. :-)

> For convenience, modern browsers define a
> window.undefined property which contains this "undefined"
> value. jQuery also defines this property for older browsers:

hahaha, well, lets not forget, memory is binary, DISPLAYING it is
characters. :-)

I will say that with JS it came become a guessing game, and for
someone who wrote the first PC Email package, you had no trouble
exploring what is what. :-)

> > which is internal constant for null  which in most language
> > is a zero value concept.
>
> Not in JavaScript. The undefined value is not the same
> as null, and neither is the same as zero.

Fine, so lets go ahead and change all our optional function parameters
where so much code is written as this:

       if(p) then use it
       if(!p) then dont use it
       if (p == null) then don't use it

to this

       if(p != undefined) then use it
       if(p == undefined) then do't use it

You kidding me?

Most programmers will associate "undefined" (and I don't mean that
literally) with an object/class concept.  null is a pointer concept.

So if you want to say:

    var p;

and not initialize it to what in your mind it think it should be,
like:

    var p  =  null;    // I see this as a pointer,

    var p  =  undefined;   // JS, I see that as  object or pointer

    var p  =  0;      // I see that as a number or a
                            hackers quick way of nullifying a
variable.

But if you wish to debate keeping variables uninitialized because you
think its better - well, I am not going to debate it with you any
more.

> Why would I care what the government says? I don't
> write code for them. :-)

Experience to know various practices.

> Coding guidelines can't be universal, because different
> languages are not the same.

If you believe that, then you are I have nothing in common when it
comes to development and I wasn't going to point this out, but I think
I will now,  your JSONP plugin as reeking with memory leaks. It leaves
some jsonp_timestamp stuff in memory after each run. :-)

When I see that, we do not have anything in common. :-)

--
HLS




Reply via email to