These notes reflect changes to the Chaga string arithmetic library.


version 0.6.0
  * Changed datatype "float" to "real" in the Chaga programming language. I thus have to push out a new version of LibChaga to reflect these changes. 
  * Renamed function "packed_string_float_release_memory" to "packed_string_real_release_memory"
  * Renamed function "packed_string_float_component_release_memory" to "packed_string_real_component_release_memory"
  * Renamed function "packed_string_float_set_sign" to "packed_string_real_set_sign"
  * Renamed function "packed_string_float_initialize_to_zero" to "packed_string_real_initialize_to_zero"
  * Renamed function "packed_string_float_initialize_to_undefined" to "packed_string_real_initialize_to_undefined"
  * Renamed function "packed_string_float_append_one_digit_left_of_decimal" to "packed_string_real_append_one_digit_left_of_decimal"
  * Renamed function "packed_string_float_append_two_digits_left_of_decimal" to "packed_string_real_append_two_digits_left_of_decimal"
  * Renamed function "packed_string_float_append_one_digit_right_of_decimal" to "packed_string_real_append_one_digit_right_of_decimal"
  * Renamed function "packed_string_float_append_two_digits_right_of_decimal" to "packed_string_real_append_two_digits_right_of_decimal"
  * Renamed function "packed_string_float_append_number_block_right_of_decimal_in_stack_order" to "packed_string_real_append_number_block_right_of_decimal_in_stack_order"
  * Renamed function "packed_string_float_copy_number" to "packed_string_real_copy_number"
  * Renamed function "packed_string_float_set_value" to "packed_string_real_set_value"
  * Renamed function "packed_string_float_display" to "packed_string_real_display"
  * Renamed function "packed_string_float_determine_absolute_value_larger_of_two_floats" to
  * Renamed function "copy_packed_string_float_digits_into_packed_string_integer" to "packed_string_real_determine_absolute_value_larger_of_two_reals"
  * Renamed function "copy_packed_string_integer_digits_into_packed_string_float" to "copy_packed_real_integer_digits_into_packed_string_float"
  * Renamed function "copy_packed_string_integer_digits_into_left_packed_string_float_component" to "copy_packed_string_integer_digits_into_left_packed_string_real_component"
  * Renamed function "_packed_string_float_divide" to "_packed_string_real_divide"
  * Renamed function "_packed_string_float_add_both_numbers_same_sign" to "_packed_string_real_add_both_numbers_same_sign"
  * Renamed function "packed_string_float_add" to "packed_string_real_add"
  * Renamed function "_packed_string_float_subtract_both_numbers_same_sign" to "_packed_string_real_subtract_both_numbers_same_sign"
  * Renamed function "_packed_string_float_subtract_both_numbers_same_sign_v2" to "_packed_string_real_subtract_both_numbers_same_sign_v2"
  * Renamed function "packed_string_float_subtract" to "packed_string_real_subtract"
  * Renamed function "packed_string_float_multiply" to "packed_string_real_multiply"
  * Renamed function "copy_packed_string_integer_digits_into_packed_string_float_v2" to "copy_packed_string_integer_digits_into_packed_string_real_v2"
  * Renamed function "packed_string_float_divide" to "packed_string_real_divide"
  * Renamed function "packed_string_float_equal" to "packed_string_real_equal"
  * Renamed function "packed_string_float_not_equal" to "packed_string_real_not_equal"
  * Renamed function "packed_string_float_less_than" to "packed_string_real_less_than"
  * Renamed function "packed_string_float_less_than_or_equal" to "packed_string_real_less_than_or_equal"
  * Renamed function "packed_string_float_greater_than" to "packed_string_real_greater_than"
  * Renamed function "packed_string_float_greater_than_or_equal" to "packed_string_real_greater_than_or_equal"
  * Renamed function "packed_string_float_power" to "packed_string_real_power"
  * Renamed function "packed_string_float_nth_root_with_bisection_method" to "packed_string_real_nth_root_with_bisection_method"
  * Renamed function "_packed_string_float_determine_seed_value_for_newton_raphson_nth_root" to "_packed_string_real_determine_seed_value_for_newton_raphson_nth_root"
  * Renamed function "packed_string_float_nth_root_with_newton_raphson_method" to "packed_string_real_nth_root_with_newton_raphson_method"
  * Renamed function "convert_packed_string_float_to_scientific_notation" to "convert_packed_string_real_to_scientific_notation"
  * Renamed function "is_packed_string_float_in_scientific_notation_format" to "is_packed_string_real_in_scientific_notation_format"
  * Renamed function "packed_string_float_truncate_to_packed_string_integer" to "packed_string_real_truncate_to_packed_string_integer"
  * Renamed function "convert_packed_string_float_to_boolean" to "convert_packed_string_real_to_boolean"
  * Renamed function "convert_boolean_to_packed_string_float" to "convert_boolean_to_packed_string_real"
  * psflt data structure (packed string float) renamed to psreal











version 0.5.10
  * Fixed bug in evaluate_runtime_expression_return_integer_result_for_set_statement. I made sure the expression stack was completely empty before returning.
  * Fixed bug in evaluate_runtime_expression_return_float_result_for_set_statement. I made sure the expression stack was completely empty before returning.
  * Fixed bug in evaluate_runtime_expression_return_boolean_result_for_set_statement. I made sure the expression stack was completely empty before returning.
  * Fixed bug in evaluate_runtime_expression_return_boolean_result. I made sure the expression stack was completely empty before returning.

version 0.5.9
  * Fixed output error in boolean_display function: Removed an "\n" from being output when a boolean value is NULL.

version 0.5.8
  * Fixed bug in packed_string_integer_display. When the string integer to be displayed is NULL, packed_string_integer_display displays "UNDEFINED" now.
  * Fixed bug in packed_string_float_display. When the string float to be displayed is NULL, packed_string_float_display displays "UNDEFINED" now.

version 0.5.7
  * Added new subroutine boolean_release_memory
  * Updated testing routines to utilize new boolean release memory subroutine.

version 0.5.6
  * Changed Application Programming Interface for all Boolean related functions. Now Booleans will be stored as 64-bit pointers. This allows me to have three possible values for Boolean variables: {undefined, FALSE, TRUE}. 
  * Added additional sanity checks for the test suite to evaluate LibChaga. The goal is to make testing rigorous.

version 0.5.5
  * Added support for integer and decimal constants in numerical expressions and mixed Boolean/numerical expressions.
  * Fixed bug in packed_string_integer_greater_than
  * Fixed bug in packed_string_integer_greater_than_or_equal
  * Fixed bug in packed_string_integer_less_than
  * Fixed bug in packed_string_integer_less_than_or_equal
  * Fixed bug in packed_string_integer_equal
  * Fixed bug in packed_string_integer_not_equal
  * Fixed bug in packed_string_float_multiply
  * Fixed bug in packed_string_float_subtract

version 0.5.4
  * Added new subroutine packed_string_float_initialize_to_undefined
  * Added new subroutine evaluate_runtime_expression_return_float_result_for_set_statement
  * Added new subroutine evaluate_runtime_expression_return_boolean_result_for_set_statement
  * Added new subroutine evaluate_runtime_expression
  * Added new subroutine boolean_xor
  * Modified evaluate_runtime_expression_return_integer_result_for_set_statement
  * Fixed bug in packed_string_float_truncate_to_packed_string_integer
  * Fixed bug in _packed_string_integer_modulo_on_positive_integers
  * Fixed bug in packed_string_integer_modulo
  * Fixed bug in packed_string_integer_display

version 0.5.3
  * Added new subroutine convert_packed_string_integer_to_boolean
  * Added new subroutine convert_packed_string_float_to_boolean
  * Added new subroutine boolean_display
  * Added new subroutine packed_string_float_less_than_or_equal
  * Added new subroutine packed_string_float_greater_than
  * Added new subroutine packed_string_float_greater_than_or_equal
  * Added new subroutine packed_string_float_not_equal

version 0.5.2
  * Fixed bug in packed_string_float_subtract when first number is negative and second number is negative.
  * Added new subroutine: push_operator_runtime_expression_stack
  * Added new subroutine: push_operand_runtime_expression_stack
  * Added new subroutine: pop_runtime_expression_stack
  * Added new subroutine: evaluate_runtime_expression_return_boolean_result
  * Added new subroutine: evaluate_runtime_expression_return_integer_result_for_set_statement
  * Added new subroutine: convert_packed_string_integer_to_packed_string_float
  * Added new subroutine: packed_string_float_truncate_to_packed_string_integer

version 0.5.1
  * Added scale attribute bit to Chaga packed string integer structure for Chaga compiler infrastructure use.
  * Added scale attribute bit to Chaga packed string float structure for Chaga compiler infrastructure use.
  * Added new subroutine "packed_string_integer_component_release_memory".
  * Added new subroutine "packed_string_float_component_release_memory".
  * Most packed_string_integer library subroutines now release memory on the packed_string_integer number component portion. This is a more efficent way to utilize memory and preserves the scale attribute.
  * Most packed_string_float library subroutines now release memory on the packed_string_float number component portion. This is a more efficent way to utilize memory and preserves the scale attribute.
  * Removed "packed_string_float_purge_unused_memory" subroutine. It was not being called anywhere and was legacy code.

version 0.5.0 
  * Chaga string arithmetic library first public release.

