That may be technically true, but in my experience you "design" a circuit (ultimately down to individual logic gates), and then implement it as an FPGA, or as a custom chip. The process of "programming" a particular connection is closely related to the "routing" stage of implementing a custom chip.
You generally "program" a PROM by loading (eg) a compiled program into it.
Not only “technically true” but in real.
You buy the chip (e.g. a PROM) already manufactured by big companies as I wrote. They designed and manufactured the chip defining the type, characteristics, structure, speed, busses, interface, commands… and creating in it all gates available that can be used.
Who makes the customization (programming) uses those gates to get a specific functionality.
Without the chip designed and supplied by those companies (something that Leonardo Corporation is not able to do at all) you will not have in hand any chip to be programmed and therefore any programmed device.