Mixed Language Programming: from Python to C

Course/Event Essentials

Event/Course Start
Event/Course End
Event/Course Format
In person
Live (synchronous)

Venue Information

Country: United Kingdom
Venue Details: Click here

Training Content and Scope

Scientific Domain
Level of Instruction
Intermediate
Sector of the Target Audience
Industry
Public Sector
HPC Profile of Target Audience
Application Users
Data Scientists
Language of Instruction

Other Information

Organiser
Event/Course Description

Aimed at intermediate learners, this course will enable you to combine the simplicity of Python with the speed of C, resulting in speeding up the time to result significantly. Perhaps you want to test a system using Python test tools, or use an existing library written in C? These are all benefits of mixed language programming. 

This course would be especially suitable for domain specialists (such as in life sciences and bioinformatics) or data scientists who are not expert-level programmers but have some programming experience "on the side" which they use in the course of their research or work. This course could help you to make your programming faster or more efficient. 

Learning objectives 

  • You will learn in detail about ctypes, a library that provides data types compatible with C and allows calling functions from shared libraries. 

  • You will learn how to pass arguments to these functions, recover return values and modify their arguments. A particular emphasis will be placed on handling NumPy arrays.

Pre-requisites 

Proficient in Python programming. For the practical sessions you will need to have a working version of Python 3 and a C compiler on your laptop or computer.