strider
strider

Reputation: 2227

Does Haskell allow use of keywords in identifiers?

C# allows it if you put an @ before the variable name. So int @int = 0; is valid in C#.

Does Haskell have anything similar to this or it doesn't allow it altogether?

Thanks

Upvotes: 6

Views: 667

Answers (2)

Martijn
Martijn

Reputation: 6773

Some words are keywords in some contexts but can be freely used as identifiers in others, such as as and hiding.

The C# trick is nothing but just slightly changing the name so that is it no longer a keyword. In Haskell, you could put a _ before or after the name, or append a '.

Upvotes: 8

Jeremiah Willcock
Jeremiah Willcock

Reputation: 30989

It appears that it is not allowed. Note that you can usually put ' after a keyword (since that is a valid identifier character) and get a non-keyword.

Upvotes: 3

Related Questions