daphne-project/daphne

Constant folding for cast from number to string

Offen

#931 geöffnet am 06.12.2024

 (1 Kommentar) (0 Reaktionen) (0 zugewiesene Personen)C++ (84 Forks)auto 404
good first issue

Repository-Metriken

Stars
 (80 Sterne)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

The DAPHNE compiler can evaluate various operations on constant scalars at compile-time. The respective constant folding implementations can be found in src/ir/daphneir/Fold.cpp. While casts of scalars between various value types can already be folded (see mlir::OpFoldResult mlir::daphne::CastOp::fold(FoldAdaptor adaptor)), casts from numbers to strings are not folded yet. Folding such casts would be useful as it would allow DaphneDSL users to do things like:

X = readMatrix("path/to/file/dataset_" + 123 + ".csv";

Which is currently not possible as the file name cannot be resolved at compile-time.

Contributor Guide