# Whitepaper comments (https://docs-orhepa2tm-ton-core-docs.vercel.app/llms/foundations/whitepapers/comments/content.md)



Descriptions in the original [whitepapers](/llms/foundations/whitepapers/overview/content.md) are not aligned with actual blockchain sources. This page provides clarifications and status updates for the whitepapers, highlighting features that have not been implemented and correcting descriptions of those that have been.

## TON Virtual Machine, `tvm.pdf` [#ton-virtual-machine-tvmpdf]

### 1.3.2. List of control registers [#132-list-of-control-registers]

The zero element of the `c7` tuple is an environment information (which itself is also a tuple). The remaining 255 slots are used for global variables. [`[i] SETGLOB`](/llms/tvm/instructions/content.md) modifies `c7`, inserting an element with index `i`, [`[i] GETGLOB`](/llms/tvm/instructions/content.md) reads `i`-th element from `c7`.

See the [TVM registers](/llms/tvm/registers/content.md) page for details.

### 4.4. Continuations as objects [#44-continuations-as-objects]

Tolk implements this via [callable types](/llms/tolk/types/callables/content.md) — first-class function values of the form `fun(...) -> ...`, including lambda expressions that capture outer-scope variables.

### 4.5.7. List of predefined exceptions [#457-list-of-predefined-exceptions]

Exit code `11` is thrown by [standard function selector](/llms/tvm/registers/content.md) if there is no function with given ID. Also it is thrown by [`SENDMSG`](/llms/tvm/instructions/content.md) in case of invalid message.

### 5.1. Codepages and interoperability of different TVM versions [#51-codepages-and-interoperability-of-different-tvm-versions]

Only codepage `0` is implemented.

### A. Instructions and opcodes [#a-instructions-and-opcodes]

Basic gas price is `10 + b`, not `10 + b + 5r`. The [TVM gas documentation](/llms/tvm/gas/content.md) explains these details.

Provided instruction list is obsolete: use [TVM instructions](/llms/tvm/instructions/content.md) instead.

### B.2. Step function of TVM [#b2-step-function-of-tvm]

"Reference implementation of TVM" and codepages `-1` and `-2` are not implemented yet.

## Fift, `fiftbase.pdf` [#fift-fiftbasepdf]

> The dictionary is supposed to be split into several vocabularies, or namespaces; however, namespaces are not implemented yet, so all words are currently defined in the same global namespace.

Namespaces and context switching are now implemented — Fift words are defined in the default dictionary and accessible through the global namespace called `Fift`.

It is now possible to add new namespaces with the `namespace` word or switch dictionary contexts on the fly. It is also possible to define words or named constants directly under those namespaces and reference words from different namespaces:

```fift
namespace My

"a" constant a
"b" constant b
"c" constant c

a b c .s { drop } 3 times // "a" "b" "c"

My definitions
"b-my" constant b
"c-my" constant c
"d-my" constant d

a b c d .s { drop } 4 times // "a" "b-my" "c-my" "d-my"

Fift definitions
a b c .s { drop } 3 times // "a" "b-my" "c-my" "d-my"

My b My c My d .s { drop } 3 times // "b-my" "c-my" "d-my"
a b c .s { drop } 3 times // "a" "b" "c" "d"

My definitions
a b c d .s { drop } 4 times // "a" "b-my" "c-my" "d-my"
Fift a Fift b Fift c d .s { drop } 4 times // "a" "b" "c" "d-my"

Fift definitions
cr
My-wordlist @
{ drop type -1 } hmapforeach drop cr // "b " "d " "c "
```

## The Open Network, `ton.pdf` [#the-open-network-tonpdf]

### 2.1.3. Messages and Instant Hypercube Routing [#213-messages-and-instant-hypercube-routing]

Not implemented. Only [Hypercube Routing (HR)](https://en.wikipedia.org/wiki/Hypercube_internetwork_topology) is present.

### 2.1.6. Identification of workchains [#216-identification-of-workchains]

The workchain identifier is a **signed** 32-bit integer (`int32`), not unsigned. The *masterchain* has ID `-1`, and the *basechain* has ID `0`.

### 2.1.7. Creation and activation of new workchains [#217-creation-and-activation-of-new-workchains]

The only active workchain is the basechain (ID `0`). The validator-consensus activation flow has never been exercised to add another workchain.

### 2.1.18. TON coins and multi-currency workchains [#2118-ton-coins-and-multi-currency-workchains]

Support for `extra_currencies` has been implemented, but it is not being utilized. The [jetton smart contracts](/llms/standard/tokens/jettons/overview/content.md) are used instead.

### 2.1.20. TON Virtual Machine [#2120-ton-virtual-machine]

Cells up to 1023 data bits, not 128 data bytes.

### 2.2.5. TL, or the Type Language [#225-tl-or-the-type-language]

Learn more in the [TL-B overview](/llms/languages/tl-b/overview/content.md).

### 2.4.20. Instant Hypercube Routing: fast path for messages [#2420-instant-hypercube-routing-fast-path-for-messages]

Not implemented. Only [Hypercube Routing (HR)](https://en.wikipedia.org/wiki/Hypercube_internetwork_topology) is present.

### 2.6.4. Fishermen: obtaining money by pointing out others' mistakes [#264-fishermen-obtaining-money-by-pointing-out-others-mistakes]

Not implemented.

### 4.1.9. Decentralized mixed services, or fog services [#419-decentralized-mixed-services-or-fog-services]

[Cocoon](https://github.com/TelegramMessenger/cocoon).

<div className="fd-steps">
  <div className="fd-step">
    ### TON Payments [#5-ton-payments]

    Partially implemented via specialized [smart contracts](https://github.com/ton-blockchain/payment-channels).
  </div>
</div>
