Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | WIP |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | dgp-review |
Files: | files | file ages | folders |
SHA3-256: |
94ecf8fbd46e2f61f5c88cb7e19e0853 |
User & Date: | dgp 2020-01-20 19:09:30 |
Context
2020-01-20
| ||
19:36 | WIP check-in: 28b9760596 user: dgp tags: dgp-review | |
19:09 | WIP check-in: 94ecf8fbd4 user: dgp tags: dgp-review | |
18:32 | WIP check-in: d084e89d50 user: dgp tags: dgp-review | |
Changes
Changes to doc/dev/value-history.md.
︙ | ︙ | |||
367 368 369 370 371 372 373 | and a new public routine **Tcl_CreateObjCommand** to create commands implemented using the new command procedure signature. Commands using the new signature have the ability to receive the complete argument set of Tcl 8.0 as arguments. An arbitrary Tcl 8.0 value can be returned using a call to **Tcl_SetObjResult**. One of these commands can be evaluated by use of the old routine **Tcl_Eval** or the new routine | | | 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 | and a new public routine **Tcl_CreateObjCommand** to create commands implemented using the new command procedure signature. Commands using the new signature have the ability to receive the complete argument set of Tcl 8.0 as arguments. An arbitrary Tcl 8.0 value can be returned using a call to **Tcl_SetObjResult**. One of these commands can be evaluated by use of the old routine **Tcl_Eval** or the new routine **Tcl_EvalObj** when the script to be evaluated itself might include the __NUL__ byte. The caller then retrieves the result of the evaluated command with a call to **Tcl_GetObjResult**. A new routine **Tcl_GetStringResult** allows the interpreter result to be retrieved as a **NUL**-terminated string, with the corresponding truncation at any **NUL** byte that might be in it. This is not a recommended routine, but it is an improvement over direct access to the _interp_->_result_ field, which Tcl 8.0 declares deprecated. All Tcl operations that need |
︙ | ︙ | |||
441 442 443 444 445 446 447 | < ``` </pre> Others are largely masked by the use of the bytecode compiler and execution engine, also new in Tcl 8.0. | > > > > > > | > > > > > > > > > > > | | > | 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 | < ``` </pre> Others are largely masked by the use of the bytecode compiler and execution engine, also new in Tcl 8.0. Several routines, both public and private, and a number of established data structures continue to make use of **NUL**-terminated strings. Because of this, although the fully general set of Tcl values includes all binary sequences, several components of Tcl remain limited, and may not include the **NUL** byte. Examples include command names, namespace names, channel names, channel type names, **Tcl_ObjType** names, and likely more. ## Tcl 8.1 (Development begun 1997, Official release 1999-) *Representation with an encoding of the Unicode Universal Character Set (UCS)* A major re-thinking of Tcl values began in 1997 as work toward Tcl 8.1 began. The reconciliation of Unicode 1.1 and ISO-10646 into agreement showed a clear path forward for software to manage text encodings under one organized plan. The publication of RFC 2044 describing a UTF-8 encoding for With this new future vision of text management in software, the notion that programmers could benefit from being shielded from the need to deal with encodings rapidly vanished. In contrast, the value of joining in support of a developing standard was apparent. During the development of Tcl 8.1, |