1. A calculator comprising: a processor; and a memory coupled to the processor, the memory including: a key superset having attributes associated with a plurality of system-defined keys and at least one user-defined key; at least one user-defined keyset, the at least one user-defined keyset including a subset of the key superset; and a session memory configured to store attributes associated with a plurality of calculator sessions, wherein each of the plurality of calculator sessions is associated with the evaluation of at least one expression.