Extending a scientific application with scripting capabilities

نویسنده

  • Fahri Basegmez
چکیده

the more changes and additions became inevitable. Your coworkers eventually started asking for a better alternative to the modify-recompile-run routine, so you created an input file-based interface to your application. Suddenly, what used to be a single subroutine now has thousands of lines of code. Some users then decided they wanted a graphical user interface, so you created it using a different language than the one in which you wrote your computational subroutines. To your amazement, your user base quadrupled in three months. You also quickly discovered that making two different languages talk to each other takes more time than successfully replicating cold-fusion experiments. It pleased you to see that more people used your application, but, obviously, more users mean more demands. Now they want to perform optimizations, implement design of experiments, automate frequently performed operations, create 2D and 3D data plots, generate reports automatically, interact with databases, and perform many other tasks that you could not even have dreamed about. To satisfy all these demands, you decide that adding scripting capability to your application was the answer, but what’s the best approach? What’s out there In my own investigations for a similar situation, I discovered that several tools and intermediary languages existed for different platforms that could help different languages talk to each other. From these options, I picked COM (the Component Object Model) to implement scripting capability in Shvib for Windows. Shvib is a shock and vibration analysis program based on Tom Derby’s Fortran subroutines that I have been developing at Barry Controls. Freely and commercially available scripting languages abound out there, but after investigating some of them, I decided to use Python as a scripting language for Shvib. Shvib has a Visual Basic 6 GUI and several Fortran subroutines compiled as Windows DLLs to perform computations (see Figure 1). Because Shvib is a Windows application, COM was the natural choice to glue the Visual Basic GUI, the Fortran DLLs, and Python scripting together.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

UI Development Using XSL Beans Table of Contents

GUI Development Environment Using XSL Beans Basic Development Environment Look and Feel GUI Layout Models Applications and Application Behavior What Is an Application Physically? What Does an Application Do? WWW Applications and Distributed Closures Editing Application Behavior To Script, or Not to Script That is the Question. Scripting, Functional Programming, and XML Instances Editing the Cod...

متن کامل

C APIs in Extension and Extensible Languages

Scripting languages are used in conjuction with C code in two ways: as extension languages, where the interpreter is embedded as a library into an application; or as extensible languages, where the interpreter loads C code as add-on modules. These two scenarios share many similarities, as in both of them two-way communication of code and data needs to take place. However, the differences betwee...

متن کامل

Making Traffic Visualization Movies by Scripting a Graphical User Interface

This report presents a recent extension to the open source traffic simulation “SUMO”, which allows to generate demonstration movies by scripting the user interface from an external application. The scripting was realised by extending an available on-line interface. For obtaining a final movie, further steps are necessary, which are described. Examples for using the extension are given and discu...

متن کامل

A Prolog Datamodel for State Chart XML

SCXML was proposed as one description language for dialog control in the W3C Multimodal Architecture but lacks the facilities required for grounding and reasoning. This prohibits the application of many dialog modeling techniques for multimodal applications following this W3C standard. By extending SCXML with a Prolog datamodel and scripting language, we enable those techniques to be employed a...

متن کامل

ATHLET Framework for Embedding/Extending: An Efficient, Flexible & Easy-to-use Python Framework to a Large FORTRAN Code

— Over the years, large scientific code packages have been successfully developed using FORTRAN. Today, maintaining and extending these codes is a challenging task and often forbids several possibilities. Rewriting legacy code packages is almost prohibitive due to lacking resources and inertia against changing functional codes. One way of tackling these challenges is to integrate scripting lang...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Computing in Science and Engineering

دوره 4  شماره 

صفحات  -

تاریخ انتشار 2002