Using Python with Other Languages
| Authors | Vishesh Yadav, Siddhant Sanyam |
| Talk Type | tutorial |
| Level | Intermediate |
| Topic | Embedding/extending |
| Tags | InterCompatibility, OtherLanguages, jython, embedding, extending |
Not every time a project is developed using single language. A Python project may need to use another language for some tasks or an existing project written in some other language may need to use Python for some tasks. No matter what, better productivity can definitely be obtained when Python comes into game. This tutorial shall walk through with some of the options that are available to extend your projects using different other languages and also on how can you use Python to extend your existing projects in other languages.
What will be covered?
- Why to use Python in projects with more than one language.
-
Scenarios
- Python as host and other language as guest
- Python as guest and other language as host
-
Techniques to do it. Exposing API's/Classes/Objects, embedding python,
extending python
-
Python and C
- Python.h - The Python C API
- Pyrex
-
Python and C++
- Boost.Python
-
Python and Java
- Using Jython
-
Python and .NET (very little introduction)
- Iron Python
- References to other techniques for other languages
- SWiG
-
Python and C
- Making your applications plugginable with Python
- Making existing plugginable application plugginable with Python as well.
Examples covered
Very simple example for
- Python as host, C/C++/Java as guest
- Python as guest, C/C++/Java as host
Demonstration of making an application plugginable with Python
- A text processor
- An image processor
Simple SWiG examples
Demonstrating some widely used applications written in other languages using Python like Vim, GIMP, GEdit, Pidgin, Weechat, XChat
Setup for the Tutorial
Though not totally necessary but would be great if following setup is provided:
- Every attendee connected to an Internal LAN(wired or wi-fi) as well as speakers. This will help to view/download source files and slides.
- Some experience with any of following languages is necessary:
- C
- C++
- Java
Vishesh Yadav
Vishesh Yadav is an undergraduate Computer Science and Engineering student from JSS Academy of Techniacal Education, Noida. He's been working on C/C++ for several years and for more than 3 years in Python. He works as part time freelance developer and is a KDE Hacker.
Website: http://www.vishesh-yadav.com/ Blog: http://www.vishesh-yadav.com/blog
Siddhant Sanyam
Blog: http://yatantrika.co.cc/
Git Repo: http://github.com/siddhant3s/
Undergrad from NIT Trichy.
Working with Python for more than three years.
Use Python for all personal programming needs.
Currently an Intern at Nexedi working on UNG project (a free alternative of Google Docs and other SaaS service)
Creator and Designer of DFCTF 2011, India's second CTF style Ethical Hacking competition.(Backend of which was written in Python).
Speaker at workshops related to Web security.(Last one at Vortex 11)
Good working knowledge of Robotics and Embedded system and AI related paradigms.
| file | size | uploaded | comment |
|---|---|---|---|
| pycon11-other-lang.zip | 1.5 MB | september 17, 2011 | Slides and examples |
| python_other_lang.zip | 294.0 KB | september 7, 2011 | Two PDF's [(Jython,Python C)(SWIG,Boost)] |
You can upload or delete a file if you are author of this talk.











