Error processing request

Parameters

CONTENT_LENGTH0
REQUEST_METHODGET
REQUEST_URI/revision/static+constant+datasets+stored+in+proc?V=4
QUERY_STRINGV=4
CONTENT_TYPE
DOCUMENT_URI/revision/static+constant+datasets+stored+in+proc
DOCUMENT_ROOT/var/www/nikit/nikit/nginx/../docroot
SCGI1
SERVER_PROTOCOLHTTP/1.1
HTTPSon
REMOTE_ADDR172.70.100.97
REMOTE_PORT54038
SERVER_PORT4443
SERVER_NAMEwiki.tcl-lang.org
HTTP_HOSTwiki.tcl-lang.org
HTTP_CONNECTIONKeep-Alive
HTTP_ACCEPT_ENCODINGgzip, br
HTTP_X_FORWARDED_FOR3.17.128.129
HTTP_CF_RAY87f1a77e8e88e267-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.17.128.129
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 {static constant datasets stored in proc} '''\[xk2600\]'''\ I\ wanted\ the\ ability\ to\ provide\ a\ constant\ \"keyed\"\ string\ mechanism\ (similar\ to\ enums)\ and\ liked\ this\ concept...\ I\ need\ to\ convert\ it\ into\ a\ proc\ which\ can\ create\ these\ on\ demand.\ The\ premise\ is\ simple,\ dynamically\ write\ a\ proc\ that\ contains\ a\ switch\ which\ based\ on\ a\ single\ arg\ returns\ a\ result.\n\n**Static\ Constant\ Enumerated\ Strings**\n======\n\ \ namespace\ eval\ httpd\ \[list\ proc\ status\ \{code\}\ \{switch\ -exact\ --\ \$code\}\ \]\n\ \ foreach\ \{code\ message\}\ \{\n\ \ \ \ 100\ Continue\n\ \ \ \ 101\ \{Switching\ Protocols\}\n\ \ \ \ 102\ Processing\n\n\ \ \ \ 200\ OK\n\ \ \ \ 201\ Created\n\ \ \ \ 202\ Accepted\n\ \ \ \ 203\ \{Non-Authoritative\ Information\}\n\ \ \ \ 204\ \{No\ Content\}\n\ \ \ \ 205\ \{Reset\ Content\}\n\ \ \ \ 206\ \{Partial\ Content\}\n\ \ \ \ 207\ Multi-Status\n\ \ \ \ 208\ \{Already\ Reported\}\n\ \ \ \ 226\ \{IM\ Used\}\n\n\ \ \ \ 300\ \{Multiple\ Choices\}\n\ \ \ \ 301\ \{Moved\ Permenantly\}\n\ \ \ \ 302\ Found\n\ \ \ \ 303\ \{See\ Other\}\n\ \ \ \ 304\ \{Not\ Modified\}\n\ \ \ \ 305\ \{Use\ Proxy\}\n\ \ \ \ 306\ \{Switch\ Proxy\}\n\ \ \ \ 307\ \{Temporary\ Redirect\}\n\ \ \ \ 308\ \{Permenant\ Redirect\}\n\n\ \ \ \ 400\ \{Bad\ Request\}\n\ \ \ \ 401\ Unauthorized\n\ \ \ \ 402\ \{Payment\ Required\}\n\ \ \ \ 403\ Forbidden\n\ \ \ \ 404\ \{Not\ Found\}\n\ \ \ \ 405\ \{Method\ Not\ Allowed\}\n\ \ \ \ 406\ \{Not\ Acceptable\}\n\ \ \ \ 407\ \{Proxy\ Authentication\ Required\}\n\ \ \ \ 408\ \{Request\ Timeout\}\n\ \ \ \ 409\ Conflict\n\ \ \ \ 410\ Gone\n\ \ \ \ 411\ \{Length\ Required\}\n\ \ \ \ 412\ \{Precondition\ Failed\}\n\ \ \ \ 413\ \{Payload\ Too\ Large\}\n\ \ \ \ 414\ \{URI\ Too\ Long\}\n\ \ \ \ 415\ \{Unsupported\ Media\ Type\}\n\ \ \ \ 416\ \{Range\ Not\ Satisfiable\}\n\ \ \ \ 417\ \{Expectation\ Failed\}\n\ \ \ \ 421\ \{Misdircted\ Request\}\n\ \ \ \ 422\ \{Unprocessable\ Entity\}\n\ \ \ \ 423\ Locked\n\ \ \ \ 424\ \{Failed\ Dependancy\}\n\ \ \ \ 426\ \{Upgrade\ Required\}\n\ \ \ \ 428\ \{Precondition\ Required\}\n\ \ \ \ 429\ \{Too\ Many\ Requests\}\n\ \ \ \ 431\ \{Request\ Header\ Fields\ Too\ Large\}\n\ \ \ \ 451\ \{Unavailable\ For\ Legal\ Reasons\}\n\n\ \ \ \ 500\ \{Internal\ Server\ Error\}\n\ \ \ \ 501\ \{Not\ Implemented\}\n\ \ \ \ 502\ \{Bad\ Gateway\}\n\ \ \ \ 503\ \{Service\ Unavailable\}\n\ \ \ \ 504\ \{Gateway\ Time-out\}\n\ \ \ \ 505\ \{HTTP\ Version\ Not\ Supported\}\n\ \ \ \ 506\ \{Variant\ Also\ Negotiates\}\n\ \ \ \ 507\ \{Insufficient\ Storage\}\n\ \ \ \ 508\ \{Loop\ Detected\}\n\ \ \ \ 510\ \{Not\ Extended\}\n\ \ \ \ 511\ \{Network\ Authentication\ Required\}\n\n\ \ \}\ \{\ \n\ \ \ \ #\ This\ appends\ case\ +\ body\ onto\ the\ switch\ in\ the\ proc\ body\n\ \ \ \ #\ eventually\ resulting\ in\ a\ proc\ that\ looks\ like\ this:\n\ \ \ \ #\ \ \ proc\ ::httpd::status\ \{code\}\ \{\n\ \ \ \ #\ \ \ \ \ switch\ -exact\ --\ \$code\ \\\n\ \ \ \ #\ \ \ \ \ \ \ 100\ \{\ \n\ \ \ \ #\ \ \ \ \ \ \ \ \ return\ \{100\ \{continue\}\}\ \n\ \ \ \ #\ \ \ \ \ \ \ \}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \\\n\ \ \ \ #\ \ \ \ \ \ \ ...\n\ \ \ \ #\ \ \ \ \ \ \ 511\ \{\n\ \ \ \ #\ \ \ \ \ \ \ \ \ return\ \{511\ \{Network\ Authentication\ Required\}\}\n\ \ \ \ #\ \ \ \ \ \ \ \}\n\ \ \ \ #\ \ \ \}\n\ \ \ \ #\n\ \ \ \ #\ \ ...and\ is\ pretty\ slick\ if\ I\ say\ so\ myself!\n\ \ \ \ namespace\ eval\ httpd\ \[list\ proc\ status\ \{code\}\ \ \ \ \ \ \ \ \\\n\ \ \ \ \ \ \ \ \ \[concat\ \[info\ body\ ::httpd::status\]\ \ \ \ \ \ \ \ \ \ \ \ \ \\\n\ \ \ \ \ \ \ \ \ \ \ \$code\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \\\n\ \ \ \ \ \ \ \ \ \ \ \[list\ \[list\ return\ \[list\ \$code\ \$message\]\]\]\ \ \ \ \\\n\ \ \ \ \]\ \ \ \ \]\n\ \ \}\n\n%\ ::httpd::status\ 200\n200\ OK\n======\n\nComments,\ suggestions,\ improvements\ welcome.\n\n----\n\[bll\]\ 2017-10-17\ \ Seems\ complicated.\ \ Why\ not\ just:\n\n======\nnamespace\ eval\ httpd\ \{\n\ \ variable\ vars\n\n\ \ set\ vars(dict.code.msg)\ \{\n\ \ \ \ \ 100\ Continue\n\ \ \}\n\n\ \ proc\ status\ \{\ code\ \}\ \{\n\ \ \ \ variable\ vars\n\n\ \ \ \ if\ \{\ \[dict\ exists\ \$vars(dict.code.msg)\ \$code\]\ \}\ \{\n\ \ \ \ \ \ return\ \[list\ \$code\ \[dict\ get\ \$vars(dict.code.msg)\ \$code\]\]\n\ \ \ \ \}\n\ \ \ \ #\ handle\ future\ growth\n\ \ \ \ return\ \[list\ \$code\ \"Code\ \$code\"\]\ \n\ \ \}\n\}\n----\n\n<<categories>>Concept regexp2} CALL {my render {static constant datasets stored in proc} '''\[xk2600\]'''\ I\ wanted\ the\ ability\ to\ provide\ a\ constant\ \"keyed\"\ string\ mechanism\ (similar\ to\ enums)\ and\ liked\ this\ concept...\ I\ need\ to\ convert\ it\ into\ a\ proc\ which\ can\ create\ these\ on\ demand.\ The\ premise\ is\ simple,\ dynamically\ write\ a\ proc\ that\ contains\ a\ switch\ which\ based\ on\ a\ single\ arg\ returns\ a\ result.\n\n**Static\ Constant\ Enumerated\ Strings**\n======\n\ \ namespace\ eval\ httpd\ \[list\ proc\ status\ \{code\}\ \{switch\ -exact\ --\ \$code\}\ \]\n\ \ foreach\ \{code\ message\}\ \{\n\ \ \ \ 100\ Continue\n\ \ \ \ 101\ \{Switching\ Protocols\}\n\ \ \ \ 102\ Processing\n\n\ \ \ \ 200\ OK\n\ \ \ \ 201\ Created\n\ \ \ \ 202\ Accepted\n\ \ \ \ 203\ \{Non-Authoritative\ Information\}\n\ \ \ \ 204\ \{No\ Content\}\n\ \ \ \ 205\ \{Reset\ Content\}\n\ \ \ \ 206\ \{Partial\ Content\}\n\ \ \ \ 207\ Multi-Status\n\ \ \ \ 208\ \{Already\ Reported\}\n\ \ \ \ 226\ \{IM\ Used\}\n\n\ \ \ \ 300\ \{Multiple\ Choices\}\n\ \ \ \ 301\ \{Moved\ Permenantly\}\n\ \ \ \ 302\ Found\n\ \ \ \ 303\ \{See\ Other\}\n\ \ \ \ 304\ \{Not\ Modified\}\n\ \ \ \ 305\ \{Use\ Proxy\}\n\ \ \ \ 306\ \{Switch\ Proxy\}\n\ \ \ \ 307\ \{Temporary\ Redirect\}\n\ \ \ \ 308\ \{Permenant\ Redirect\}\n\n\ \ \ \ 400\ \{Bad\ Request\}\n\ \ \ \ 401\ Unauthorized\n\ \ \ \ 402\ \{Payment\ Required\}\n\ \ \ \ 403\ Forbidden\n\ \ \ \ 404\ \{Not\ Found\}\n\ \ \ \ 405\ \{Method\ Not\ Allowed\}\n\ \ \ \ 406\ \{Not\ Acceptable\}\n\ \ \ \ 407\ \{Proxy\ Authentication\ Required\}\n\ \ \ \ 408\ \{Request\ Timeout\}\n\ \ \ \ 409\ Conflict\n\ \ \ \ 410\ Gone\n\ \ \ \ 411\ \{Length\ Required\}\n\ \ \ \ 412\ \{Precondition\ Failed\}\n\ \ \ \ 413\ \{Payload\ Too\ Large\}\n\ \ \ \ 414\ \{URI\ Too\ Long\}\n\ \ \ \ 415\ \{Unsupported\ Media\ Type\}\n\ \ \ \ 416\ \{Range\ Not\ Satisfiable\}\n\ \ \ \ 417\ \{Expectation\ Failed\}\n\ \ \ \ 421\ \{Misdircted\ Request\}\n\ \ \ \ 422\ \{Unprocessable\ Entity\}\n\ \ \ \ 423\ Locked\n\ \ \ \ 424\ \{Failed\ Dependancy\}\n\ \ \ \ 426\ \{Upgrade\ Required\}\n\ \ \ \ 428\ \{Precondition\ Required\}\n\ \ \ \ 429\ \{Too\ Many\ Requests\}\n\ \ \ \ 431\ \{Request\ Header\ Fields\ Too\ Large\}\n\ \ \ \ 451\ \{Unavailable\ For\ Legal\ Reasons\}\n\n\ \ \ \ 500\ \{Internal\ Server\ Error\}\n\ \ \ \ 501\ \{Not\ Implemented\}\n\ \ \ \ 502\ \{Bad\ Gateway\}\n\ \ \ \ 503\ \{Service\ Unavailable\}\n\ \ \ \ 504\ \{Gateway\ Time-out\}\n\ \ \ \ 505\ \{HTTP\ Version\ Not\ Supported\}\n\ \ \ \ 506\ \{Variant\ Also\ Negotiates\}\n\ \ \ \ 507\ \{Insufficient\ Storage\}\n\ \ \ \ 508\ \{Loop\ Detected\}\n\ \ \ \ 510\ \{Not\ Extended\}\n\ \ \ \ 511\ \{Network\ Authentication\ Required\}\n\n\ \ \}\ \{\ \n\ \ \ \ #\ This\ appends\ case\ +\ body\ onto\ the\ switch\ in\ the\ proc\ body\n\ \ \ \ #\ eventually\ resulting\ in\ a\ proc\ that\ looks\ like\ this:\n\ \ \ \ #\ \ \ proc\ ::httpd::status\ \{code\}\ \{\n\ \ \ \ #\ \ \ \ \ switch\ -exact\ --\ \$code\ \\\n\ \ \ \ #\ \ \ \ \ \ \ 100\ \{\ \n\ \ \ \ #\ \ \ \ \ \ \ \ \ return\ \{100\ \{continue\}\}\ \n\ \ \ \ #\ \ \ \ \ \ \ \}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \\\n\ \ \ \ #\ \ \ \ \ \ \ ...\n\ \ \ \ #\ \ \ \ \ \ \ 511\ \{\n\ \ \ \ #\ \ \ \ \ \ \ \ \ return\ \{511\ \{Network\ Authentication\ Required\}\}\n\ \ \ \ #\ \ \ \ \ \ \ \}\n\ \ \ \ #\ \ \ \}\n\ \ \ \ #\n\ \ \ \ #\ \ ...and\ is\ pretty\ slick\ if\ I\ say\ so\ myself!\n\ \ \ \ namespace\ eval\ httpd\ \[list\ proc\ status\ \{code\}\ \ \ \ \ \ \ \ \\\n\ \ \ \ \ \ \ \ \ \[concat\ \[info\ body\ ::httpd::status\]\ \ \ \ \ \ \ \ \ \ \ \ \ \\\n\ \ \ \ \ \ \ \ \ \ \ \$code\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \\\n\ \ \ \ \ \ \ \ \ \ \ \[list\ \[list\ return\ \[list\ \$code\ \$message\]\]\]\ \ \ \ \\\n\ \ \ \ \]\ \ \ \ \]\n\ \ \}\n\n%\ ::httpd::status\ 200\n200\ OK\n======\n\nComments,\ suggestions,\ improvements\ welcome.\n\n----\n\[bll\]\ 2017-10-17\ \ Seems\ complicated.\ \ Why\ not\ just:\n\n======\nnamespace\ eval\ httpd\ \{\n\ \ variable\ vars\n\n\ \ set\ vars(dict.code.msg)\ \{\n\ \ \ \ \ 100\ Continue\n\ \ \}\n\n\ \ proc\ status\ \{\ code\ \}\ \{\n\ \ \ \ variable\ vars\n\n\ \ \ \ if\ \{\ \[dict\ exists\ \$vars(dict.code.msg)\ \$code\]\ \}\ \{\n\ \ \ \ \ \ return\ \[list\ \$code\ \[dict\ get\ \$vars(dict.code.msg)\ \$code\]\]\n\ \ \ \ \}\n\ \ \ \ #\ handle\ future\ growth\n\ \ \ \ return\ \[list\ \$code\ \"Code\ \$code\"\]\ \n\ \ \}\n\}\n----\n\n<<categories>>Concept} CALL {my revision {static constant datasets stored in proc}} CALL {::oo::Obj6118216 process revision/static+constant+datasets+stored+in+proc} CALL {::oo::Obj6118214 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