Path: csiph.com!1.us.feeder.erje.net!3.us.feeder.erje.net!2.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!reader5.news.weretis.net!news.solani.org!.POSTED!not-for-mail From: Mild Shock Newsgroups: comp.lang.java.programmer Subject: Re: ANN: Dogelog Player 1.1.5 (HTTP Server) Date: Tue, 20 Feb 2024 17:10:11 +0100 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Tue, 20 Feb 2024 16:10:11 -0000 (UTC) Injection-Info: solani.org; logging-data="411747"; mail-complaints-to="abuse@news.solani.org" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0 SeaMonkey/2.53.18.1 Cancel-Lock: sha1:QXxG3ModrSLVswbLLlfhtFJZcj0= In-Reply-To: X-User-ID: eJwNysEBwCAIA8CVQBKEcUBl/xHaex/N1c+G08Hh5Drpt0681pBJukhPPS5kSHZUQ63Zz26rYsT+st9GgVH4AFV1FS0= Xref: csiph.com comp.lang.java.programmer:53694 Dogelog Player is a Prolog system that features a ‘$YIELD’/1 instruction. The instruction was conceived for single threaded runtimes with an event loop. We could now demonstrate how to realize it without an explicit event loop in a multi threaded runtime. The idea is that threads use a bouncer semaphore to get a permission to execute and thus become “coroutines”. Now that we have layed the foundation we started asyncifying Dogelog Player for Java. We demonstrate a HTTP server and HTTP client interaction in the same JVM. See also: Surrogate Async/Await with JDK 21 https://twitter.com/dogelogch/status/1759972607355470296 Surrogate Async/Await with JDK 21 https://www.facebook.com/groups/dogelog Mild Shock schrieb: > > We already reported the new capability > that we can read async from streams. We made > this available for the file system reads on > nodeJS. We report here about a further progress > extending the async approach to HTTP fetch in > the browser and on nodeJS. > > Multiple downloads make a case for async I/O > since RFC 2616 limits the number of connections. > HTTP/2 allows to send off multiple requests > which async I/O can capitalize. We demonstrate > quasi-parallel execution in Dogelog Player for > both the browser and nodeJS. > > See also: > > Async HTTP Client for Dogelog Player > https://twitter.com/dogelogch/status/1756144112946807135 > > Async HTTP Client for Dogelog Player > https://www.facebook.com/groups/dogelog