Skip to content

ASKEM_SKEMA_Milestone_6

Compare
Choose a tag to compare
@cl4yton cl4yton released this 18 Feb 23:37
· 355 commits to main since this release
a1a53d8

ASKEM SKEMA Milestone 6 release. This includes:

  • Adding support for implicit conditional checks in while loop conditions.
    • Many Python data types may be interpreted as having a Boolean value. For example, if x is a list, then in the code while x:, the condition will evaluate to True if the list has elements, otherwise False. The Python2CAST translation now treats condition expression trees that do not have a Boolean operator at the head as implicitly wrapped in a Python bool() function call.
  • Python permits lazy variable declaration. This means a new variable identifier may be declared within a conditional branch (must be declared in any branch of a conditional). These are now handled.
    • This particularly caused issues when the introduced variables were used in keyword arguments in function calls within conditionals.
  • Adding support for keyword only (kwonly) arguments
    • These are arguments in a function definition that come after a * in the arguments list
  • Improved support of the user module imports.
    • Added functionality to better read user modules. This also fixes an issue where user modules couldn't be read in certain instances.