Or Verilog, or any hardware description language that runs events on an event queue while explicitly keeping track of time.
If you're using VHDL for design automation, and you're going to synthesize it to hardware, then the synthesis program does logic mapping to whatever technology (standard cells, FPGA blocks, etc.) is being used, figures out the logic and interconnect delays, and tries to satisfy the requirement that everything be ready when the clock ticks, while allowing a reasonable clock frequency.
The way that VHDL handles both uses can be a little confusing.