---
id: kw-internal
name: internal
category: structure
kind: keyword
tokens: internal
sig: namespace Name { internal function helper() { } }
tip: Inside a namespace: a function kept out of the Name.* surface.
order: 55
---
In a namespace block every function is part of the Name.* surface unless it says internal: then it is emitted as an ordinary helper the namespace's own methods can call, and Name.helper is not a method.
```ludic
namespace Trail {
internal function step(n: int) -> int { return n + 1 }
function next(n: int) -> int { return step(n) }
}
```