Broken link on download page

2018-07-19 Thread Anthony Clayden
The Hugs download page here: https://www.haskell.org/hugs/pages/downloading.htm Has broken links for the latest (Sept 2006) downloads of Hugs for Windows. Should be: * WinHugs-Sep2006.exe https://www.haskell.org/hugs/downloads/2006-09/WinHugs-Sep2006.exe * MinHugs-Sep2006.exe https://www.haskell

Hugs troubs: build from source on Windows

2018-07-21 Thread Anthony Clayden
Thank you Neil, I'm amazed anybody's still monitoring this forum. (I was more posting for the sake of posterity/somebody else trying to revive Hugs.) In that case, I'm sure you'll remember this ;-) https://mail.haskell.org/pipermail/hugs-bugs/2006-August/001612.html I'm building Hugs from the Se

strange code in lexer

2018-10-05 Thread Anthony Clayden
Reading input.c (as you do - I was modifying to allow TRex label names to start upper-case), there's some strange code in lexing qualified names -- routine yylex(): if (isIn(c0,LARGE)) { /* Look for qualified name */ Text it = readIdent(); /* No keyword

Trex record update strange rejection

2018-11-08 Thread Anthony Clayden
I'm trying to write a polymorphic/generic Trex record update method/class, so I can go > ... setTrex #y 7 r ... That is: use #y to index into record `r`; return `r` with its `y` field set to 7. Then it's using #y as a term-level proxy embedding the label, not as an accessor function. (If `r` does

Compiling WinHugs (on Windows) in 2006, in 2020

2020-05-07 Thread Anthony Clayden
[Yes I don't expect anyone will read this. I'm leaving it for the record.] No surprise that compiling WinHugs wasn't plain sailing. What's more remarkable is that it did eventually compile (with Microsoft Visual C/C++ under Visual Studio); and that most of the difficulties in getting a working sys

Hugs Mailing lists?

2020-09-22 Thread Anthony Clayden
Hi hugs-bugs, is anybody listening here? I've posted to hugs-users a few days ago; that seems to have disappeared, although the list happily showed my posts earlier this year. I've posted to the admin. No response. So trying here. AntC ___ Hugs-Bugs m

smelly code in input.c

2021-06-14 Thread Anthony Clayden
(I can't say for sure I have a bug, because I don't grok the code well enough to figure out how to make something go wrong, but ...) In /src/input.c line 1714 https://github.com/FranklinChen/hugs98-plus-Sep2006/blob/master/src/input.c#L1714 , > if (c0=='.' && isIn(c0,(SMALL|LARGE|SYMBOL))) {

Re: smelly code in input.c

2021-06-15 Thread Anthony Clayden
Thanks Iavor, nothing ventured nothing gained I went ahead and made that change. I can't find any difference in behaviour for well-formed code. I can't find any difference in whether code is accepted/rejected. But there's a difference in error messages for ill-formed code, specifically ill-formed

Options | Runtime | Use Show instance for results -- turned off is surprisingly unreliable

2021-09-21 Thread Anthony Clayden
I usually have 'Use Show instance' switched off (aka use 'built-in printer'), so I can see (at least in crude form) imported or 'system' datatypes that don't have show instances/also it's a bit more revealing if I get exceptions. I have a datatype: >data Tree a = Empty >| Leaf a >

Datatype Constructors: selector/matcher vs builder 'function'

2021-10-04 Thread Anthony Clayden
>From this discussion 'Contexts on datatype declarations' http://web.archive.org/web/20151208175102/http://code.haskell.org/~dons/haskell-1990-2000/threads.html#04062 It looks like (at least at the time) GHC had separate functions for matching vs building using a constructor. In Hugs, the type fo

Re: Datatype Constructors: selector/matcher vs builder 'function'

2021-10-10 Thread Anthony Clayden
list. On Tue, 5 Oct 2021 at 13:36, Anthony Clayden wrote: > > From this discussion 'Contexts on datatype declarations' > > http://web.archive.org/web/20151208175102/http://code.haskell.org/~dons/haskell-1990-2000/threads.html#04062 > > It looks like (at least at the t

Trex-generated Show instances dodgy

2022-08-25 Thread Anthony Clayden
Strange: on loading this module, Hugs complains (this is standard-issue Sep 2006 Hugs in Hugsmode) > - An instance of ShowRecRow (x :: a, y :: a) is required to derive Show (NPoint a) Just loading it again and the complaint disappears. > module NPoint where > > import Hugs.Trex > > newt

Trex illegal? overlapping instances for derived classes -- is this intended?

2022-09-19 Thread Anthony Clayden
For derived instances I'm getting decls that aren't allowed if I try to put them explicitly. They're rejected as overlapping, and in no substitution ordering. >import Hugs.Trex > >type UserId = Int >type EventId = Int > >data Message > = SendChat (Rec ( message :: String, use

[hugs-bugs] Trex illegal? overlapping instances for derived classes -- is this intended?

2025-06-26 Thread Anthony Clayden
> > ... decls that aren't allowed if I try to put them explicitly. > They're rejected as overlapping, and in no substitution ordering. > Ah, I see this limitation is acknowledged in SPJ&MPJ 1999 'Lightweight Extensible Records for Haskell' proposal. https://www.microsoft.com/en-us/research/wp-cont