On Sunday, October 20, 2013 8:33:40 PM UTC-7, Lex Berezhny wrote:
>
> On Sun, Oct 20, 2013 at 10:24 PM, Sarvi Shanmugham 
> <[email protected]<javascript:>
> > wrote:
>
>> Question 1:
>>      The simple i=i*2 seems to have a complex translation. Can't it just 
>> be i=i*2 in java script and handle the error when it happens?
>>
>
> Python allows you to overload the multiplication operator. We have to 
> check at runtime if the objects being multiplied have overloaded 
> multiplication.
>
> Also, native strings in Python overload the multiplication operator, 
> that's why you can do:
>
> print '='*10
>
I get this. 
But considering Javascript is JITed and highly optimized including 
unrolling static loops and function calls if I understand right,
wouldn't the following 
i=p.op_mul(i,2)
be faster than the current
i = (typeof ($mul1=i)==typeof ($mul2=2) && typeof $mul1=='number'?
$mul1*$mul2:
$p['op_mul']($mul1,$mul2));
as long as op_mul() can handle numbers as well?
And much more readable too?
 

>  
>
>> Question 2:
>>    The whole idea of using dictionaries to store functions seems 
>> inefficient for access. Is there an alternative approach using say
>> prototype.bin() or other approaches to define and access these functions 
>> that people have tried?
>>
>
>  In javascript objects/dictionaries are one and the same, so one can't be 
> more efficient than the other.
>
> >> a = {}
> Object {}
> >> a.foo = 3
> 3
> >> a['foo']
> 3
>
Yeah, thats sorta why I asked the question. Just a beginnner but this how I 
understood java script objects and classes
and I thought this entire generated code segmented would have a been much 
more readable as objects instead of dictionary objects.
And whats with the $ notation. From what I am reading this is just jQuery 
convention and not required.
I presume we do pyjamas because we love python and hence readable code.
Yet the generated Javascript seems less so, though from what I understand 
there more readable alternatives.
So was just trying to understand what the thinking was. 


> If you want to hack on pyjs internals you're definitely going to have to 
> learn JavaScript.
>
Yup. Pretty much what I have been doing right now. :-)
Still much ways to go.


Sarvi:
PS: Has this blog post been discussed on the list. Did any changes/action 
items come out of it?
 

>
>  - lex
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Pyjs.org Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to