Path: csiph.com!weretis.net!feeder8.news.weretis.net!reader5.news.weretis.net!news.solani.org!.POSTED!not-for-mail From: Mild Shock Newsgroups: comp.lang.javascript Subject: NetFish Transducer in Dogelog Player (Re: ANN: Dogelog Player 2.1.1 (Sky Limit)) Date: Sun, 12 Oct 2025 00:42:33 +0200 Message-ID: <10cemgn$t6kn$2@solani.org> References: <10bltn3$dk1e$2@solani.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Sat, 11 Oct 2025 22:42:31 -0000 (UTC) Injection-Info: solani.org; logging-data="957079"; mail-complaints-to="abuse@news.solani.org" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0 SeaMonkey/2.53.21 Cancel-Lock: sha1:0Q9s7b9WtT+tQr6y/5zqoS/y5pQ= X-User-ID: eJwFwQkBwDAIA0BLBUJo5TAe/xJ250ZhBeiEr2+eNbPPVaCWOF2YmonI1S2WQnQfP1vVpqTkC9ypS/Tr6h9W5hXm In-Reply-To: <10bltn3$dk1e$2@solani.org> Xref: csiph.com comp.lang.javascript:124410 We present a Prolog transducer dubbed NetFish that can be used to translate Java code into C# code. NetFish can be built with a non-standard version of DCG, extending the notion of semi-context from terminals to non-terminals. NetFish can be easily run over arbitrary long files with little memory. NetFish uses a sliding window along an input text. It then applies the given compiled DSL rules in a cascading style. We used various LLMs such as ChatGPT and DeepSeek to advice us in the rules, but such a process is currently not integrated. The output can be run with .NET 9.0. See also: NetFish Transducer in Dogelog Player https://medium.com/2989/9d392937c1e3 Mild Shock schrieb: > Dear All, > > We are happy to announce a new edition > of the Dogelog Player: > > - Enhanced GC: > To lift the native stack limitations, we > opted for a marking algorithm based on > Peter Deutschs algorithm E as found in > Donald Knuths "The Art of Computing Programming" > book. Our variant uses an int field that was > anyway recently introduced for Prolog > compound coloring, so that no extra space > was introduced in this release. > > - Enhanced Binary-Ops: > By adopting the pointer approach from Jaffar's > Unification we could get rid of the map based > realization from previous releases for union > find. It turns out this gives quite a speed > advantage. We also lifted the native stack > limitation by using an extra space in the > form of a stack and a log, which surprisingly > performs well especially for Java, less for > JavaScript and Python. > > - Enhanced Unary-Ops: > For unary operations such as term_variables/2, > ground/1, etc.. we experimented with both > Peter Deutsch and a stack / log approaches. > Interestingly for performance reasons we had > to dismiss the two phase approach induced by > a marking algorithm such as Peter Deutsch, > and went also with the one phase approach as > offered by a stack / log realization. > > Have Fun! > > Jan Burse, 02.10.2025, https://www.herbrand.ai/