This repository has been archived by the owner on Jan 12, 2024. It is now read-only.
Do we need the IR wrappers? #103
Labels
Documentation
Issues related to the specs or documentation maintained on this repository
Do we need the IR wrappers?
The known reason for the IR wrappers (in
*.ll
files) to exist is that the IR wrappers names start with the double underscore__
.The identifiers starting with double underscore are reserved in the standards of C and C++.
Are there any other reasons?
Can Q# compiler generate the QIR such that instead of the IR wrappers the corresponding wrapped functions are called?
(without
__
in the beginning)Stefan:
I would prefer finding a solution that does not require keeping the IR wrappers, whether that be switching the wrappers to a language that doesn't reserve
__
as starting characters (like Rust) or updating the QIR spec to remove those. While they do provide some benefit for avoiding name collisions, that pattern has a cost overhead for implementation both for us and any external folks who want to implement their own runtime. Perhaps we could remove this question from here in favor of an issue filed against the spec in the language repo?Bettina:
Yes, I am open to that conversation and filing it on the language repo makes sense
The text was updated successfully, but these errors were encountered: