News for hackers. Stuff that matters.
Re:How I wrote a self-hosting C compiler in 40 days by nickpsecurity on Wednesday December 16, 2015 @10:15PM (#10749258)
A commenter elsewhere said Racket had ADT's with langplai but also with langracket via subtypes of struct type with match macro. Said it was same style of programming.

So that's static typing (Typed Racket) and macros for sure. Possibly ADT's depending on whether you object to claim above. Should cover your list of requirements.

Re:How I wrote a self-hosting C compiler in 40 days by sklogic on Thursday December 17, 2015 @03:38AM (#10750279)
The problem here is that a single variant tag does not uniquely define a type, as all such type systems expect.
Re:How I wrote a self-hosting C compiler in 40 days by nickpsecurity on Thursday December 17, 2015 @11:15AM (#10752296)
You think it could be modified to handle that?