Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
There are intermediate representations in actively maintained compilers that rely on CPS at least partly. Examples are SML/NJ (as described here) and Flambda 2 for OCaml. Moreover, there are quite a few recently proposed IRs that are based on CPS. This not only includes IRs for functional languages, like those proposed in Farvadin and Reppy 2020 or Quiring et al. 2021 for example, but also for more imperative languages, see, e.g., Jung et al. 2018 or Leißa et al. 2015 (also see Thorin 2).
Yes, for you this is the right decision. But for us going to CPS makes everything significantly easier and in cases where you do use control effects significantly faster. For our language Effekt we are exploring different tradeoffs in different backends.
Related posts
- The Val Object Model: Template for a possible future Swift object model
- What the imperative shell of an Functional Core/Imperative Shell language looks like
- Algebraic Effects: Another mistake carried through to perfection?
- The Registers of Rust - Without boats, dreams dry up
- An approach to manual memory management and side effect handling system, feedback, ideas and thoughts requested