Path: ...!news.mixmin.net!weretis.net!feeder8.news.weretis.net!reader5.news.weretis.net!news.solani.org!.POSTED!not-for-mail From: Mild Shock Newsgroups: comp.lang.prolog Subject: Re: Is Scryer Prologs failure measurable? (Was: Holy Grail makes People Disappear) Date: Sat, 10 Aug 2024 13:41:21 +0200 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 10 Aug 2024 11:41:19 -0000 (UTC) Injection-Info: solani.org; logging-data="1090134"; 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.2 Cancel-Lock: sha1:5N8ipzmJJZ74GiLnIoQFxpBeozs= In-Reply-To: X-User-ID: eJwNwoERwEAEBMCW4h5HOU/ov4Rkdu24eFPdXG1/HaWIqUPI6TKTmGS9shL3JvAgkK27pazr9Nxpb8XkkB9J2BV6 Bytes: 3329 Lines: 75 Hi, Currently I have first hand experience how difficult it is to model single treaded async on top of multi-threaded Prolog, since I want to bring Dogelog Player async also to formerly Jekejeke Prolog. It wasn't so much a problem in the Dogelog Player for Java version, since I could replicate the JavaScript design. But it is a little nasty in the formerly Jekejeke Prolog case, since Thread identity from multi-threaded Prolog and Task identity from single treaded async are not the same, you have to dig deeper into stackfull and stackless coroutines, to get the Task identity notion correctly. I wasn't able to do it yet for formerly Jekejeke Prolog, there is still a pending ticket. Bye Mild Shock schrieb: > Hi, > > Generally I don't believe in things like > SWI-Prolog Janus Python integration. This > type of integration has the advantage > > that SWI-Prolog can run in full speed, > on the other hand it has the disadvantage > that one cannot take advantage of Python async, > > because SWI-Prolog itself has no async. I > am talking about the single threaded async here. > My experience single treaded async and multi-threaded > > Prolog are quite different pairs of shoes. So > when doing the C# backend for Dogelog Player, > I will be faced again to provide a complete > > async solution for the async part of Novacore. > > Woa! > > Bye > > Mild Shock schrieb: >> Hi, >> >> A few days age we improved the cross referencer, >> to deal with the many target platforms. The >> old cross referencer for example showed: >> >> xor/3        nova/Eval.java >>               nova/eval.mjs >>               nova/eval.py >> >> Meaning the evaluable function xor/3 is >> available in Java, JavaScript and Python. >> What we now do, we simply show: >> >> xor/3        nova/eval.* >> >> Soon the wildcard will mean C# as well, >> and not only Java, JavaScript and Python. >> Extending the proof of concept for Prolog >> >> compiler 100% written in Prolog itself. >> >> Bye