# Are there any plans (or interest in) making a Julia interface for VTK?

**URL:** https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653
**Category:** Support
**Created:** [June 9, 2023, 4:44pm UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653 "2023-06-09T16:44:40Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![rexthor](https://discourse.vtk.org/user_avatar/discourse.vtk.org/rexthor/32/6481_2.png) [@rexthor](https://discourse.vtk.org/u/rexthor)
#### Post date: [June 9, 2023, 4:44pm UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/1 "2023-06-09T16:44:40Z")

</div>

Are there any plans (or interest in) making a [Julia](https://julialang.org/) interface for VTK?  
I use VTK from Python a lot, and the bindings are _great_ … the bindings for Julia are essentially nonexistent other than write-your-own (which, when I am doing it, is not-so-great).

The Julia bindings that [presently exist](https://juliapackages.com/p/vtkview) are very narrow in purpose.

---

<div class="post-metadata">

### Author: ![rexthor](https://discourse.vtk.org/user_avatar/discourse.vtk.org/rexthor/32/6481_2.png) [@rexthor](https://discourse.vtk.org/u/rexthor)
#### Post date: [June 9, 2023, 6:43pm UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/2 "2023-06-09T18:43:45Z")

</div>

Ok completely gratuitous, I just wanted to make a markdown poll (haven’t ever done that before). If there were a Julia binding for VTK, would you use it?

_Poll ([view on site](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/2))_

---

<div class="post-metadata">

### Author: ![toddy](https://discourse.vtk.org/letter_avatar_proxy/v4/letter/t/edb3f5/32.png) [@toddy](https://discourse.vtk.org/u/toddy)
#### Post date: [June 10, 2023, 3:52am UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/3 "2023-06-10T03:52:06Z")

</div>

Have a look at the wrapping tool code for Python and Java bindings and you’ll get an idea about what is required.

---

<div class="post-metadata">

### Author: ![ffrancesco94](https://discourse.vtk.org/user_avatar/discourse.vtk.org/ffrancesco94/32/6710_2.png) [@ffrancesco94](https://discourse.vtk.org/u/ffrancesco94)
#### Post date: [June 12, 2023, 1:19pm UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/4 "2023-06-12T13:19:17Z")

</div>

I, for one, would be very interested in it. @toddy Is there any documentation about these tools? The wiki is very old and I would like to understand more about it and see how much work it’d take. The fact that Julia uses multiple dispatch rather than being pure OO might be also a problem (?)

Francesco

---

<div class="post-metadata">

### Author: ![rexthor](https://discourse.vtk.org/user_avatar/discourse.vtk.org/rexthor/32/6481_2.png) [@rexthor](https://discourse.vtk.org/u/rexthor)
#### Post date: [June 12, 2023, 1:26pm UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/5 "2023-06-12T13:26:34Z")

</div>

I have tried wrapping some C++ with Julia, and started to get an idea of just how big of an issue that was. There are some tools in Julia like [Cxx.jl](https://github.com/JuliaInterop/Cxx.jl), and a lower level package, [Clang.jl](https://github.com/JuliaInterop/Clang.jl) that save you the trouble of parsing the C++ “manually”. I’m interested enough to help, but I’m pretty new to Julia.

I’m also getting a better appreciation of the work that folks here have put into the bindings for other languages!

I think that the _wrapping_ part of VTK can be seen [here](https://github.com/Kitware/VTK/tree/master/Wrapping).

---

<div class="post-metadata">

### Author: ![toddy](https://discourse.vtk.org/letter_avatar_proxy/v4/letter/t/edb3f5/32.png) [@toddy](https://discourse.vtk.org/u/toddy)
#### Post date: [June 12, 2023, 1:30pm UTC](https://discourse.vtk.org/t/are-there-any-plans-or-interest-in-making-a-julia-interface-for-vtk/11653/6 "2023-06-12T13:30:34Z")

</div>

Unfortunately there’s no documentation that I know of.

It looks like you can call **c** code from Julia so it should be possible to wrap VTK. [Calling C and Fortran Code · The Julia Language](https://docs.julialang.org/en/v1/manual/calling-c-and-fortran-code/)

You can have a look at  
`VTK\Wrapping\Tools` **vtkWrapJava.c** and **vtkWrapPython.c**
