The information contained in this document pertains to software products and services that are subject to the controls of the Export Administration Regulations.

Slides:



Advertisements
Similar presentations
Introduction to the BinX Library eDIKT project team Ted Wen Robert Carroll
Advertisements

RAPTOR Syntax and Semantics By Lt Col Schorsch
ONYX RIP Version Technical Training General. Overview General Messaging and What’s New in X10 High Level Print and Cut & Profiling Overviews In Depth.
® Page 1 Intel Compiler Lab – Intel Array Visualizer HDF Workshop VI December 5, 2002 John Readey
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic JavaScript: Introduction to Scripting.
IDL Tutorials: Day 4 Goal: Learn some programming techniques: Relational operators, conditional statements, boolean operators, loops Angela Des Jardins.
James Boother Blog: INTRODUCTION TO POWERSHELL.
Information Technology Center Hany Abdelwahab Computer Specialist.
Microsoft Visio is diagramming software for Microsoft Windows. It uses vector graphics to create diagrams. The 2007 Standard and Professional editions.
Guide To UNIX Using Linux Third Edition
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
ASP.NET Programming with C# and SQL Server First Edition
1 ES 314 Advanced Programming Lec 2 Sept 3 Goals: Complete the discussion of problem Review of C++ Object-oriented design Arrays and pointers.
Chapter 2: Algorithm Discovery and Design
C++ fundamentals.
Esri International User Conference | San Diego, CA Technical Workshops | Managing and Editing Annotation Natalie Vines Samantha Keehan July 14, 2011.
E-Con Roadmap to Success Roadmap for the e-Con Sales and Product Configurator.
The NCAR Command Language (NCL) Ethan Alpert Visualization and Enabling Technologies Section, SCD, NCAR.
Chapter 11-Multimedia Authoring Tools. Overview Introduction to multimedia authoring tools. Types of authoring tools. Cross-platform authoring notes.
® Page 1 Intel Compiler Lab – Intel Array Visualizer HDF Workshop VIII October 27, 2004 John Readey
C++ Programming. Table of Contents History What is C++? Development of C++ Standardized C++ What are the features of C++? What is Object Orientation?
AIT 616 Fall 2002 PHP. AIT 616 Fall 2002 PHP  Special scripting language used to dynamically generate web documents  Open source – Free!!!  Performs.
1 of 14 Substituting HDF5 tools with Python/H5py scripts Daniel Kahn Science Systems and Applications Inc. HDF HDF-EOS Workshop XIV, 28 Sep
What’s New in Sage SalesLogix V Release Overview Sage SalesLogix v7.5.2 focuses on: −User Enhancements streamline the user experience furthering.
INTERNET APPLICATION DEVELOPMENT For More visit:
1 Perl Perl basics Perl Elements Arrays and Hashes Control statements Operators OOP in Perl.
Data Structures & AlgorithmsIT 0501 Algorithm Analysis I.
PHP TUTORIAL. HISTORY OF PHP  PHP as it's known today is actually the successor to a product named PHP/FI.  Created in 1994 by Rasmus Lerdorf, the very.
2007 Microsoft Office System Overview 2007 Microsoft Office System Overview Elizabeth Caley Senior Product Manager Microsoft Canada.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
Sigma Lisp Σλ Sam Davis Nick Alexander. What is Sigma Lisp? ● New dialect of Lisp ● Designed to be as expressive as possible.
1 Computer Programming (ECGD2102 ) Using MATLAB Instructor: Eng. Eman Al.Swaity Lecture (1): Introduction.
CHAPTER TEN AUTHORING.
Chapter 6 Object-Oriented Java Script JavaScript, Third Edition.
1 System Administration Introduction to Scripting, Perl Session 3 – Sat 10 Nov 2007 References:  chapter 1, The Unix Programming Environment, Kernighan.
The HDF Group HDF5 Tools Updates Peter Cao, The HDF Group September 28-30, 20101HDF and HDF-EOS Workshop XIV.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 13 Introduction to Classes.
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
PVSSProxy The first piece of the MACS procedure framework (ProShell) Angela Brett.
Digital curation activities enhance access and retrieval, maintain quality, add value, and facilitate use and re-use over time. This poster demonstrates.
1 AutoCAD Electrical 2008 What’s New Name Company AutoCAD Electrical 2008 What’s New AMS CAD Solutions
Copyright © 2010 Certification Partners, LLC -- All Rights Reserved Perl Specialist.
Object Based Programming Chapter 8. 2 In This Chapter We will learn about classes Garbage Collection Data Abstraction and encapsulation.
Built-in Data Structures in Python An Introduction.
What is PHP? PHP stands for PHP: Hypertext Preprocessor PHP is a server-side scripting language, like ASP PHP scripts are executed on the server PHP supports.
Perl Language Yize Chen CS354. History Perl was designed by Larry Wall in 1987 as a text processing language Perl has revised several times and becomes.
Introduction to Processing. 2 What is processing? A simple programming environment that was created to make it easier to develop visually oriented applications.
IDL Tutorials: Day 4 Goal: Learn some programming techniques: Relational operators, conditional statements, boolean operators, loops Maria Kazachenko
Chapter 6 Introduction to Defining Classes. Objectives: Design and implement a simple class from user requirements. Organize a program in terms of a view.
Copyright © 2003 ProsoftTraining. All rights reserved. Perl Fundamentals.
Introduction to Perl NICOLE VECERE. Background General Purpose Language ◦ Procedural, Functional, and Object-oriented Developed for text manipulation.
ElVis Improvements Summer 2008 Eric Zatz PPPL Summer Intern Mentor – Eliot Feibush August 11, 2008.
Java & C++ Comparisons How important are classes and objects?? What mechanisms exist for input and output?? Are references and pointers the same thing??
Javascript Basic Concepts Presentation By: Er. Sunny Chanday Lecturer CSE/IT RBIENT.
Introduction to JavaScript academy.zariba.com 1. Lecture Content 1.What is JavaScript? 2.JavaScript Pros and Cons 3.The weird JavaScript stuff 4.Including.
NcBrowse: OPeNDAP Server Access and 3-D Graphics Presented by Nancy N. Soreide NOAA/PMEL Donald W. Denbo UW/JISAO-NOAA/PMEL.
Object Based Programming Chapter 8. 2 Contrast ____________________ Languages –Action oriented –Concentrate on writing ________________ –Data supports.
PHP using MySQL Database for Web Development (part II)
1-1 Logic and Syntax A computer program is a solution to a problem.
JavaScript is a programming language designed for Web pages.
National Scientific Library at Tbilisi State University
Object Based Programming
Tools of Software Development
Introduction to Python
Programming Right from the Start with Visual Basic .NET 1/e
PHP.
Experience with the process automation at SORS
JavaScript Basics What is JavaScript?
2.1 Introduction to Object-Oriented Programming
INTRODUCTION to PERL PART 1.
Presentation transcript:

The information contained in this document pertains to software products and services that are subject to the controls of the Export Administration Regulations (EAR). The recipient is responsible for ensuring compliance to all applicable U.S. Export Control laws and regulations. IDL 8.0 & Update on IDL Development for HDF Beau Legeer – Director Product Management (ITT-VIS) September 30, 2010 HDF & HDF-EOS Workshop XIV

Visual Information Solutions IDL 8.0 Goals Fine tuned the IDL application so it is “simple-to-drive” With emphasis on the ad-hoc scientist user Major IDL language enhancements that are intuitive New control features, core data types and modern scripting syntax Powerful graphics that are modern and easy-to-use The best of direct graphics, object graphics and iTools Redesigned the Help to make it easier to learn IDL Focus on tasks and “how to” Backward compatibility for existing code

Visual Information Solutions Simple UI

Visual Information Solutions Powerful Graphics

Visual Information Solutions Redesigned Help

Visual Information Solutions Major Language Enhancements

Visual Information Solutions Graphics Functions & Dot Syntax Creation – Uses a functional interface myPlot = PLOT(myData) Property Access – Uses a structure notation myPlot.color = “yellow” background = myPlot.background_color Access Elements via Strings axis = myPlot.xaxis axis.title = “Number of Farms” allAxes = myPlot[“* axis”] ; return all axes - wild card searches

Visual Information Solutions New Graphics Functions Plot Barplot Errorplot Polarplot Plot3D Image Contour Surface Map Mapgrid Mapcontinents Legend Colorbar Widget_Window Vector Streamline Text Polygon Polyline Axis Ellipse

Visual Information Solutions New Graphics Native look & feel to the graphics window Intuitive toolbar with interactive controls for the graphics Programmatic control that is easy to understand for the direct graphics user Cylindrical Equal Area map projection & other map improvements New symbols for object graphics PDF output from new graphics & object graphics A Clean UI With Powerful Graphics

Visual Information Solutions Language Features !NULL Simplifies a complex, confusing operation. Other uses: Comparison with undefined variables or null objects/pointers Structure concatenation Assign to variables or function results to free memory A = [ ] ; or !NULL or { } For i=0, 100 do begin A = [A, getData()] Endfor Garbage Collection Automatic object/pointer deletion means user no longer needs to keep track of objects/pointers Features of Modern Languages

Visual Information Solutions Language – List & Hash Methods to manage IDL variables of different types together Arrays demand same types for each element List Combine any IDL type together in a single data type L1 = LIST(‘spectrum', 5, 2, [1,2,3], LIST(1,2)) L1[0] = ‘Hello’ myVar = L1[0] Hash (Dictionary) Combine any IDL type together. Elements referenced via a key H1 = HASH(‘dog', 100, ‘pig’, 200, ‘data’, findgen(100)) myVar = H1[“dog”] H1[“mykey”] = ‘Hello’

Visual Information Solutions Other Language Features Control Statement Addition of a “For Each” operator FOREACH element, variable do begin print, element ENDFOREACH New Behavior Negative Array Indices – “Wrap-around” the end of an array A[ 0 : -1 ] ; goes from the first element (0) to the last element (N-1) A[ -3 : 0 : -1 ] ; goes from element N-3 down to element 0

Visual Information Solutions Language – Operator Overloading Perform a specific object method when an operator is performed on that object Example: Combining the values of two “length objects” to return a new value Current Syntax: With Operator Overloading: Operator overloading allows you to hide this operation. Resulting in a normal statement: The operation is placed in a method that is called when the “+” operator is used on the object: FUNCTION idl_length::_overloadPlus, lenA, lenB END length = a->GetLength() + b->GetLength() c = obj_new(‘idl_length’, length) ;; make new object length = a->GetLength() + b->GetLength() return, obj_new(‘idl_length’, length) ; make new object Advanced Feature c = a + b

Visual Information Solutions What’s Overloadable EQ NE GE GT LE LT + – * / [ ] left [ ] right NOT AND OR XOR ~ ^ mod # ## && || Help, Print SIZE, N_ELEMENTS FOREACH “.” is Get/SetProperty Just inherit from IDL_Object

Visual Information Solutions Language – Objects Before & After 8.0 Create & Destroy myObject = OBJ_NEW(‘MyClass’) OBJ_DESTROY, myObject Properties: myObject->SetProperty,color=[255,0,0] myObject->GetProperty, color=myColor Calling Methods: myObject->MyMethod, a, b, c Key Points Strange syntax, difficult to learn Create myObject = MyClass( ) myObject.Cleanup Properties: myObject.color = ‘red’ myColor = myObject.color Calling Methods: myObject.MyMethod, a, b, c Key Points Standard, intuitive syntax IDL 7.0 IDL 8.0 A Simple Object Interaction Layer

Visual Information Solutions IDL 8.0 Summary Fine tuned the IDL application so it is “simple-to-drive” Major IDL language enhancements that are intuitive Powerful graphics that are modern and easy-to-use Redesigned the Help to make it easier to learn IDL Backward compatibility for existing code

IDL 8 w/HDF5 demo 17

Visual Information Solutions HDF, netCDF & CDF Support in IDL 8.0 HDF netCDF 4.1 CDF 3.3 HDF-EOS 2.8 Is the market for HDF-EOS5 growing? HDF 4.2r3 Are there more recent significant fixes?

HDF, HDF5, HDF-EOS future in IDL Continue to update library versions Incorporation of HDF-EOS5 based on demand Visual data browsing for all IDL Scientific Data Formats Implement a Common Data Model Integration directly with IDL Workbench and Language Incorporation of IDL 8.0 language enhancements to Scientific Data Formats Easy to use object syntax for simple programmatic access Reduce level of procedural calls “Drill into” HDF objects programmatically 19

Thank You! Beau Legeer – Director of Product Management ITT-VIS 20