# \[ANN\] A pretty expressive printer

**URL:** <https://racket.discourse.group/t/ann-a-pretty-expressive-printer/2094>\
**Category:** General\
**Created:** [July 12, 2023, 4:41pm UTC](https://racket.discourse.group/t/ann-a-pretty-expressive-printer/2094 "2023-07-12T16:41:09Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![sorawee](https://avatars.discourse-cdn.com/v4/letter/s/ea5d25/32.png) [@sorawee](https://racket.discourse.group/u/sorawee)\
**Post date:** [July 12, 2023, 4:41pm UTC](https://racket.discourse.group/t/ann-a-pretty-expressive-printer/2094/1 "2023-07-12T16:41:09Z")

</div>

Announcing `pretty-expressive`, a pretty printer based on our paper, A pretty expressive printer[1], which is to appear in the upcoming OOPSLA'23.

The precursor of this pretty printer, [`pprint-compact`](https://docs.racket-lang.org/pprint-compact/), will be deprecated, and the [Racket code formatter `fmt`](https://docs.racket-lang.org/fmt/) will switch to use `pretty-expressive` very soon. `pretty-expressive` will also power `fmt2`, the next version of the Racket code formatter, from the start.

Source: [GitHub - sorawee/pretty-expressive: A pretty expressive printer](https://github.com/sorawee/pretty-expressive/)  
Documentation: [pretty-expressive: a pretty expressive printer](https://docs.racket-lang.org/pretty-expressive/)

Feedback is welcome!

[1]: Sorawee Porncharoenwase, Justin Pombrio, and Emina Torlak. A pretty expressive printer. In Proc. Object-Oriented Programming, Systems, Languages and Applications, 2023.

---

<div class="post-metadata">

**Author:** ![jonsterling](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/jonsterling/32/1293_2.png) [@jonsterling](https://racket.discourse.group/u/jonsterling)\
**Post date:** [July 14, 2023, 8:41am UTC](https://racket.discourse.group/t/ann-a-pretty-expressive-printer/2094/4 "2023-07-14T08:41:04Z")

</div>

Looks interesting! I can't find a link to the actual OOPLSA paper. Can you share it here?

---

<div class="post-metadata">

**Author:** ![sorawee](https://avatars.discourse-cdn.com/v4/letter/s/ea5d25/32.png) [@sorawee](https://racket.discourse.group/u/sorawee)\
**Post date:** [July 15, 2023, 7:05am UTC](https://racket.discourse.group/t/ann-a-pretty-expressive-printer/2094/5 "2023-07-15T07:05:32Z")

</div>

Yes! The pre-print is at [https://github.com/sorawee/pretty-expressive-oopsla23-artifact/blob/main/pdf/oopsla23-paper307.pdf](https://github.com/sorawee/pretty-expressive-oopsla23-artifact/blob/main/pdf/oopsla23-paper307.pdf).

---

<div class="post-metadata">

**Author:** ![sorawee](https://avatars.discourse-cdn.com/v4/letter/s/ea5d25/32.png) [@sorawee](https://racket.discourse.group/u/sorawee)\
**Post date:** [September 11, 2023, 11:03pm UTC](https://racket.discourse.group/t/ann-a-pretty-expressive-printer/2094/6 "2023-09-11T23:03:05Z")

</div>

The above PDF (initially submitted paper for review) is now gone. But it can still accessed from [https://github.com/sorawee/pretty-expressive-oopsla23-artifact/blob/641a278d735b3bb2f0260c586a9ba6566d3521e4/pdf/oopsla23-paper307.pdf](https://github.com/sorawee/pretty-expressive-oopsla23-artifact/blob/641a278d735b3bb2f0260c586a9ba6566d3521e4/pdf/oopsla23-paper307.pdf)

Our full paper with appendices is now at [https://sorawee.github.io/pretty-expressive-oopsla23-artifact/full-paper.pdf](https://sorawee.github.io/pretty-expressive-oopsla23-artifact/full-paper.pdf)
