25개 이상의 토픽을 선택하실 수 없습니다.
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- Ast_Node* built_in_add(Ast_Node* operands) {
- double sum = 0;
- while (operands->type == Ast_Node_Type_Cons_Cell) {
- // TODO(Felix): assert type
- sum += operands->value.cons_cell->first->value.number->value;
- operands = operands->value.cons_cell->rest;
- }
-
- return create_ast_node_number(sum);
- }
-
- Ast_Node* built_in_substract(Ast_Node* operands) {
- double diff = operands->value.cons_cell->first->value.number->value;
- operands = operands->value.cons_cell->rest;
- while (operands->type == Ast_Node_Type_Cons_Cell) {
- // TODO(Felix): assert type
- diff -= operands->value.cons_cell->first->value.number->value;
- operands = operands->value.cons_cell->rest;
- }
- return create_ast_node_number(diff);
- }
|