# `type.foreign_value`

Value written as another language writes it.

Area 2, [Values and types](../topics/values-and-types.md); not declinable; the next step is usually the agent's.

There is no `null`, `nil`, `undefined` or `None`: a missing value is `none`, and Python's `True` and `False` are `true` and `false`.

```jadpo
type ProductName = Text {
    min_length: 1
}

function no_subtitle() -> ProductName? {
    return null
}
```

```text
error: Jadpo writes `none`, not `null`
 --> main.jadpo:6:12
  |
6 |     return null
  |            ^^^^ write `none`
  reason: `null` is a missing value in JavaScript, Java, C# and Kotlin; Jadpo writes it `none`.
  next: Use `none` instead of `null` (agent)
  rule: type.foreign_value
  help: https://jadpo.dev/docs/errors/type.foreign_value

check failed: 1 error, 1 file
```
