\chapter{Conclusion}
\label{c:conclusion}

The goal of this thesis is to adapt enumeration in \CFA to be aligned with the analogous features in 
other languages while being backward-compatiable to C. 
The presented features are based off on tools and techniques that widely used in 
other languages but they were adapted to better fix \CFA's feature set. Additionally, the thesis provides 
an improvement on safety and productivity of C enumeration, including enumerator overloading, 
name scoping and type checking.

To further explores the potential of enumerated types, this thesis presents a new \CFA enumeration 
that is independent on C enumeration. The \CFA enumeration aims to solve the data harmonization problem 
and have natural support to \CFA generic type, along with some new features that fit with \CFA's
programming pattern, such as enumerator conctrol structures.

The \CFA project's test suite has been expanded to test the enumerations with respect to its
implicit conversions, inheritance, interaction with the polymorphic types, and the features 
built on top of enumeration traits.

The enumerated type is an attempt to adapt classic data types into \CFA unique type system. It brings 
valuable new feature to \CFA in its own right, but also serve as a motivation to adapt other data types 
in \CFA.

% \section{Future Work}

