# Why is ccall syntax?

**URL:** <https://discourse.julialang.org/t/why-is-ccall-syntax/72427>\
**Category:** General Usage\
**Tags:** ccall\
**Created:** [December 2, 2021, 4:41am UTC](https://discourse.julialang.org/t/why-is-ccall-syntax/72427 "2021-12-02T04:41:16Z")\
**Posts on this page:** 1\
**Showing post:** 7

<div class="post-metadata">

**Author:** ![c42f](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/c42f/32/52842_2.png) [@c42f](https://discourse.julialang.org/u/c42f)\
**Post date:** [December 2, 2021, 9:25am UTC](https://discourse.julialang.org/t/why-is-ccall-syntax/72427/7 "2021-12-02T09:25:09Z")

</div>

> [@jzr](#):
>
> Is it possible to splat into `@ccall` ?

You can splat into the AST which `@ccall` is a part of, provided you do it before macro expansion. For example:

```julia
@eval @ccall printf("%d %d %d %d %d\n"::Cstring, $((:($i::Cint) for i in 1:5)...))::Cint

```

But it’s unlikely that it’s a good idea to use `@eval` like this! What’s your surrounding code look like for this use case?

---

_[View the full topic](https://discourse.julialang.org/t/why-is-ccall-syntax/72427)._
