Redefinition of a duplicate syntax binding should be an error
Currently a duplicate syntax
declaration in the same scope will override the previous binding:
syntax m = ctx => #`first`;
syntax m = ctx => #`second`;
m; // second
It should be following let
/const
binding semantics and throw an early error.