*(int*)pointer_param = bar;
In the above code the two * operators do two different things:1. Converts variable type to pointer.
2. References value found at address.
What was the historical reason for using the * operator for both things? Memory? Is it easier to write a compiler for? Is there something I'm missing?
EDIT:Code, also, It seems like a lisp version would be much easier to write a compiler for and to write; i.e.
(define (address-ref (float_pointer_cast pointer_param)) bar)
Is there some reason that the C-version is easier to write a compiler for/optimize than the lisp?