• Deutsch
    • English
  • English 
    • Deutsch
    • English
  • Login
Item View 
  •   Home
  • Rechts-, Wirtschafts- und Sozialwissenschaften
  • Wirtschaftswissenschaftliche Fakultät
  • Item View
  •   Home
  • Rechts-, Wirtschafts- und Sozialwissenschaften
  • Wirtschaftswissenschaftliche Fakultät
  • Item View
JavaScript is disabled for your browser. Some features of this site may not work without it.

Dynamic Language Bindings for C Libraries with emphasis on their application to R

by Daniel Adler
Doctoral thesis
Date of Examination:2012-05-23
Date of issue:2013-10-31
Advisor:Prof. Dr. Walter Zucchini
Referee:Prof. Dr. Thomas Kneib
Referee:Prof. Dr. Carsten Damm
crossref-logoPersistent Address: http://dx.doi.org/10.53846/goediss-4126

 

 

Files in this item

Name:adler2012.pdf
Size:3.89Mb
Format:PDF
Description:Dissertation
ViewOpen

The following license files are associated with this item:


Abstract

English

Scripting languages are becoming increasingly prevalent as a tool for rapid application development. However, numerous efficient “best-practice” software solutions are initially available as C libraries. Scripting "bindings" to C libraries are typically implemented as C wrapper modules that need to be developed and compiled for every language-library-platform combination. We discuss a middleware architecture for scripting languages that provides for seamless dynamic scripting access to the C API of native libraries without the need for compilation of wrapper modules. We gave a proof-of-concept by example of an implementation for R in which C libraries, such as OpenGL and SDL,  are loaded as if these were an extension to R.  The model is based on automation for making arbitrary C APIs available and dynamic operations for interoperability with native code and data that are carried out at the machine level using a Dynamic Foreign Function Interface. The latter need to conform with the ABI (Application Binary Interface) and Calling Conventions of the processor hardware platform. We give an overview of ABIs across five processor-architecture families and  we then discuss a portable abstraction layer for making foreign function calls and handling of callbacks. Detailed descriptions are given that explain the interface design as well as port implementations for X86, ARM, PowerPC, MIPS and SPARC processor-architecture families.
Keywords: R;middleware;scripting language;components;Foreign Function Interface;Generic Dynamic FFI;
 

Statistik

Publish here

Browse

All of eDissFaculties & ProgramsIssue DateAuthorAdvisor & RefereeAdvisorRefereeTitlesTypeThis FacultyIssue DateAuthorAdvisor & RefereeAdvisorRefereeTitlesType

Help & Info

Publishing on eDissPDF GuideTerms of ContractFAQ

Contact Us | Impressum | Cookie Consents | Data Protection Information
eDiss Office - SUB Göttingen (Central Library)
Platz der Göttinger Sieben 1
Mo - Fr 10:00 – 12:00 h


Tel.: +49 (0)551 39-27809 (general inquiries)
Tel.: +49 (0)551 39-28655 (open access/parallel publications)
ediss_AT_sub.uni-goettingen.de
[Please replace "_AT_" with the "@" sign when using our email adresses.]
Göttingen State and University Library | Göttingen University
Medicine Library (Doctoral candidates of medicine only)
Robert-Koch-Str. 40
Mon – Fri 8:00 – 24:00 h
Sat - Sun 8:00 – 22:00 h
Holidays 10:00 – 20:00 h
Tel.: +49 551 39-8395 (general inquiries)
Tel.: +49 (0)551 39-28655 (open access/parallel publications)
bbmed_AT_sub.uni-goettingen.de
[Please replace "_AT_" with the "@" sign when using our email adresses.]