ECL keywords, built-in functions and their options are reserved words, but they are generally reserved only in the context within which they are valid for use. Even in that context, you may use reserved words as field or definition names, provided you explicitly disambiguate them, as in this example:
ds2 := DEDUP(ds, ds.all, ALL); //ds.all is the 'all' field in the //ds dataset - not DEDUP's ALL option
However, it is still a good idea to avoid using ECL keywords as definition or field names.
Definition or field names cannot begin with UNICODE_ , UTF8_, or VARUNICODE_. Labels beginning with those prefixes are treated as type names, and should be regarded as reserved.