IDL 8.4? [message #89423] |
Wed, 15 October 2014 07:55  |
rryan%stsci.edu
Messages: 16 Registered: October 2014
|
Junior Member |
|
|
I stumbled onto the "Whats's New in 8.4" page this morning...
http://www.exelisvis.com/docs/WhatsNew.html
I was under the notion that 8.4 wasn't coming out until November, but I guess it's out early. Anywho. It looks like they're really moving toward object-oriented techniques and a very pythonic experience, so I wanted to know if anyone has the inside track on some things:
(1) what is this lambda-inline function business? How is it different than execute()? Can it be used with the VM? What advantages does it have?
(2) they're adding static methods to all variables? does this mean variables must be deleted (a la obj_destroy)? Can variables still change types (like x=0 & x=x+2.0 & help,x)? What happens when I evoke a string-based method on a numerical type? How does the execution time for these new static methods compare to the "functional" or "procedural" versions? I guess, what advantage do you add here, other than complete loss of backwards compatibility (or forward, I don't know. I just know I can't use these methods and give to a friend who's still running <8.4).
(3) Thye've added a boolean datatype. Is it really boolean, or is it just a byte or int that is capped at 1? I mean, will intrinsically boolean things (which should've returned booleans from day 1 which return ints such as: x = 1 lt 2 or t=keyword_set(SOME_VARIABLE)) return booleans now? So now you could do use keyword_set() to test if a keyword is set versus using keyword_set to see if the keyword is set to something non-zero (like it's always been).
I've got more questions, but these are the most troubling.
Russell
|
|
|