Software is automatically generated from one or more predefined functions
in accordance with an input statement entered in natural language.
Semantically meaningful elements are extracted from the input statement
and one or more sets of second semantically meaningful elements are
extracted from the predefined functions. At least one of a condition, an
action and/or a statement is identified in the input statement. The first
semantically meaningful elements are compared with the second
semantically meaningful elements to identify predefined functions that
correspond to action(s) and/or statement(s) of the input statement. At
least some of the first semantic elements are combined in accordance with
identified conditions to generate corresponding condition variables.
Identified functions and condition variables are combined according to a
set of predetermined rules to generate software.