Error processing request

Parameters

CONTENT_LENGTH0
REQUEST_METHODGET
REQUEST_URI/revision/Wikipedia?V=3
QUERY_STRINGV=3
CONTENT_TYPE
DOCUMENT_URI/revision/Wikipedia
DOCUMENT_ROOT/var/www/nikit/nikit/nginx/../docroot
SCGI1
SERVER_PROTOCOLHTTP/1.1
HTTPSon
REMOTE_ADDR172.70.126.44
REMOTE_PORT30500
SERVER_PORT4443
SERVER_NAMEwiki.tcl-lang.org
HTTP_HOSTwiki.tcl-lang.org
HTTP_CONNECTIONKeep-Alive
HTTP_ACCEPT_ENCODINGgzip, br
HTTP_X_FORWARDED_FOR3.22.61.246
HTTP_CF_RAY87bef5dc3a0ae114-ORD
HTTP_X_FORWARDED_PROTOhttps
HTTP_CF_VISITOR{"scheme":"https"}
HTTP_ACCEPT*/*
HTTP_USER_AGENTMozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
HTTP_CF_CONNECTING_IP3.22.61.246
HTTP_CDN_LOOPcloudflare
HTTP_CF_IPCOUNTRYUS

Body


Error

Unknow state transition: LINE -> END

-code

1

-level

0

-errorstack

INNER {returnImm {Unknow state transition: LINE -> END} {}} CALL {my render_wikit Wikipedia {'''Wikipedia''' [http://wikipedia.org/] is an ambitious attempt to collect much of the world's wisdom in a Wiki.

----
[AMG]: I just noticed that the Wikipedia page on Duck Typing [http://en.wikipedia.org/wiki/Duck_typing] completely fails to mention Tcl.  This needs to change, seeing as how Tcl pretty much wrote the book on duck typing.

[PYK] 2014-05-28: I sorta thought [Python] wrote the book on duck typing.  I
think expanding the presence of [Tcl] on Wikipedia is a very useful activity,
and hope someone finds the time to expand the duck typing article there.

[AMG]: Not at all.  In Python, types are intrinsic in values, whereas in Tcl, types exist only within the program's interpretation of values.

Python sees `"2"` and `2` as distinct, and they cannot be +'ed (added or concatenated) without the programmer explicitly begging that one be converted from str to int, or vice versa.

Tcl sees no distinction between the two.  The determination between adding or concatenation is made not by the inherent type (a concept foreign to Tcl), but rather by having adding and concatenation being distinct operators.

With Tcl, the type is inferred according to the operations being performed on the value, and the type can freely change from moment to moment with no need for explicit conversions.  The interpreter figures out the type based on what the programmer is trying to do.

With Python, the type is explicitly declared according to how the value was constructed.  Surround it in quotes, and it's a string.  Put it in brackets, and it's a mutable list.  Put it in parentheses with commas, and it's an immutable list.  Put it in braces, and it's a dict.  And so forth.  Conversions are not automatic, and the programmer has to explicitly ask for them.

======
set operands {"2" 2}
tcl::mathop::+ {*}$operands   ;# 4
join $operands {}             ;# 22
======

======python
operands = ("2", 2)
reduce(lambda x, y: x + y, operands)           # cannot concatenate 'str' and 'int' objects
reduce(lambda x, y: int(x) + int(y), operands) # 4
reduce(lambda x, y: str(x) + str(y), operands) # 22
======

<<categories>> Internet} regexp2} CALL {my render Wikipedia {'''Wikipedia''' [http://wikipedia.org/] is an ambitious attempt to collect much of the world's wisdom in a Wiki.

----
[AMG]: I just noticed that the Wikipedia page on Duck Typing [http://en.wikipedia.org/wiki/Duck_typing] completely fails to mention Tcl.  This needs to change, seeing as how Tcl pretty much wrote the book on duck typing.

[PYK] 2014-05-28: I sorta thought [Python] wrote the book on duck typing.  I
think expanding the presence of [Tcl] on Wikipedia is a very useful activity,
and hope someone finds the time to expand the duck typing article there.

[AMG]: Not at all.  In Python, types are intrinsic in values, whereas in Tcl, types exist only within the program's interpretation of values.

Python sees `"2"` and `2` as distinct, and they cannot be +'ed (added or concatenated) without the programmer explicitly begging that one be converted from str to int, or vice versa.

Tcl sees no distinction between the two.  The determination between adding or concatenation is made not by the inherent type (a concept foreign to Tcl), but rather by having adding and concatenation being distinct operators.

With Tcl, the type is inferred according to the operations being performed on the value, and the type can freely change from moment to moment with no need for explicit conversions.  The interpreter figures out the type based on what the programmer is trying to do.

With Python, the type is explicitly declared according to how the value was constructed.  Surround it in quotes, and it's a string.  Put it in brackets, and it's a mutable list.  Put it in parentheses with commas, and it's an immutable list.  Put it in braces, and it's a dict.  And so forth.  Conversions are not automatic, and the programmer has to explicitly ask for them.

======
set operands {"2" 2}
tcl::mathop::+ {*}$operands   ;# 4
join $operands {}             ;# 22
======

======python
operands = ("2", 2)
reduce(lambda x, y: x + y, operands)           # cannot concatenate 'str' and 'int' objects
reduce(lambda x, y: int(x) + int(y), operands) # 4
reduce(lambda x, y: str(x) + str(y), operands) # 22
======

<<categories>> Internet}} CALL {my revision Wikipedia} CALL {::oo::Obj3110644 process revision/Wikipedia} CALL {::oo::Obj3110642 process}

-errorcode

NONE

-errorinfo

Unknow state transition: LINE -> END
    while executing
"error $msg"
    (class "::Wiki" method "render_wikit" line 6)
    invoked from within
"my render_$default_markup $N $C $mkup_rendering_engine"
    (class "::Wiki" method "render" line 8)
    invoked from within
"my render $name $C"
    (class "::Wiki" method "revision" line 31)
    invoked from within
"my revision $page"
    (class "::Wiki" method "process" line 56)
    invoked from within
"$server process [string trim $uri /]"

-errorline

4