diff --git a/ueforth/common/forth_namespace_tests.fs b/ueforth/common/forth_namespace_tests.fs index 3a4d9fd..7fe3fae 100644 --- a/ueforth/common/forth_namespace_tests.fs +++ b/ueforth/common/forth_namespace_tests.fs @@ -449,8 +449,6 @@ e: test-windows-forth-namespace e: test-posix-forth-namespace internals voclist - out: web-interface - out: httpd out: sockets out: ansi out: editor @@ -492,8 +490,6 @@ e: test-esp32-forth-namespace internals voclist out: ansi out: registers - out: web-interface - out: httpd out: oled out: bluetooth out: rtos diff --git a/ueforth/common/testing.fs b/ueforth/common/testing.fs index 31ab9a6..1db5912 100644 --- a/ueforth/common/testing.fs +++ b/ueforth/common/testing.fs @@ -26,7 +26,7 @@ DEFINED? windows [IF] [THEN] ( Support for eval tests ) -20000 constant expect-limit +40000 constant expect-limit create expect-buffer expect-limit allot create result-buffer expect-limit allot variable expect-used variable result-used diff --git a/ueforth/common/utils_tests.fs b/ueforth/common/utils_tests.fs index 8b71ff6..f83cf8d 100644 --- a/ueforth/common/utils_tests.fs +++ b/ueforth/common/utils_tests.fs @@ -100,3 +100,11 @@ e: test-string-strides see test8 out: : test8 1 0BRANCH s" ------->" type ; ;e + +e: test-noname + :noname dup * ; + 2 over execute + swap execute + . cr + out: 16 +;e diff --git a/ueforth/common/vocabulary_tests.fs b/ueforth/common/vocabulary_tests.fs index 2e72585..06be371 100644 --- a/ueforth/common/vocabulary_tests.fs +++ b/ueforth/common/vocabulary_tests.fs @@ -134,7 +134,7 @@ variable see-tally ['] tally-type is type see-all ['] default-type is type - see-tally @ 35000 >assert + see-tally @ 25000 >assert ; ( diff --git a/ueforth/esp32/web_interface.fs b/ueforth/esp32/web_interface.fs index 0f8725a..54b5921 100644 --- a/ueforth/esp32/web_interface.fs +++ b/ueforth/esp32/web_interface.fs @@ -12,8 +12,10 @@ \ See the License for the specific language governing permissions and \ limitations under the License. -( Server Terminal ) +( Lazy loaded Server Terminal ) +:noname [ ' web-interface >body @ ] literal execute +r| also streams also WiFi also web-interface definitions : ip# dup 255 and n. [char] . emit 256 / ; @@ -28,3 +30,7 @@ also forth definitions : webui ( z z -- ) login 80 server ; only forth definitions +web-interface +| evaluate ; is web-interface +: login web-interface r| login | evaluate ; +: webui web-interface r| webui | evaluate ; diff --git a/ueforth/posix/httpd.fs b/ueforth/posix/httpd.fs index a2335ae..0afce9b 100644 --- a/ueforth/posix/httpd.fs +++ b/ueforth/posix/httpd.fs @@ -12,7 +12,10 @@ \ See the License for the specific language governing permissions and \ limitations under the License. -( HTTP Daemon ) +( Lazy loaded HTTP Daemon ) + +: httpd r| + vocabulary httpd httpd definitions also sockets 1 constant max-connections @@ -87,3 +90,5 @@ variable goal variable goal# : notfound-response ( mime$ -- ) s" text/plain" s" Not Found" 404 response ; only forth definitions +httpd +| evaluate ; diff --git a/ueforth/posix/web_interface.fs b/ueforth/posix/web_interface.fs index 6f750a2..23b99ec 100644 --- a/ueforth/posix/web_interface.fs +++ b/ueforth/posix/web_interface.fs @@ -12,8 +12,11 @@ \ See the License for the specific language governing permissions and \ limitations under the License. -( Server Terminal ) +( Lazy loaded Server Terminal ) +defer web-interface +:noname r~ +httpd also streams also httpd vocabulary web-interface also web-interface definitions @@ -149,3 +152,6 @@ create out-string out-size 1+ allot align ; only forth definitions +web-interface +~ evaluate ; is web-interface +