Re: how to invoke SML/NJ's built-in pretty printer from a program?

Joe Wells <[email protected]> Tue, 03 Mar 2009 07:58:19 +0000
Newsgroups gmane.comp.lang.sml.smlnj
Message-ID <[email protected]>
Sm9lIFdlbGxzIDxqYndAbWFjcy5ody5hYy51az4gd3JpdGVzOgoKPiBKb2huIFJlcHB5IDxqaHJA
Y3MudWNoaWNhZ28uZWR1PiB3cml0ZXM6Cj4KPj4gSSBkb24ndCB0aGluayB0aGF0IHdoYXQgeW91
IHdhbnQgaXMgcG9zc2libGUgaW4gU01ML05KLCBzaW5jZSBpdAo+PiByZXF1aXJlcyBydW50aW1l
IHR5cGUgaW5mb3JtYXRpb24uICBJbiB0aGUgUkVQTCwgd2UgYXJlIGFibGUgdG8KPj4gcHJldHR5
LXByaW50IHJlc3VsdHMgYmVjYXVzZSB3ZSBrbm93IHRoZWlyIHR5cGUsIGJ1dCB0aGF0IGlzIG5v
dAo+PiB0cnVlIGluIGdlbmVyYWwuICBTb3JyeS4KPgo+IFRoYW5rcyB2ZXJ5IG11Y2ggZm9yIHRo
ZSBhbnN3ZXIuCj4KPiBMZXQgbWUgYXNrIGEgZm9sbG93dXAgcXVlc3Rpb24uICBJcyB0aGVyZSBh
IHdheSB0byBhZGQgdHlwZQo+IGluZm9ybWF0aW9uIHRvIHRoZSBnbG9iYWwgZW52aXJvbm1lbnQg
KHdoYXQgaXMgaW4gRW52UmVmLnN0YXRlKSBmcm9tCj4gYSBwcm9ncmFtPyAgSGVyZSBpcyBhIGNv
bmNyZXRlIGV4YW1wbGUgb2Ygd2hhdCBJIGhhdmUgaW4gbWluZDoKPgo+ICAgbGV0Cj4gICAgIHZh
bCB4ID0gIndvcmxkIeKAnTsKPiAgIGluCj4gICAgIGRvX21hZ2ljICgpOwo+ICAgICBCYWNrZW5k
LkludGVyYWN0LnVzZVN0cmVhbSAoVGV4dElPLm9wZW5TdHJpbmcgInByaW50IChcIkhlbGxvLCBc
Il54KTsiKQo+ICAgZW5kCgpIZXJlIGlzIG1heWJlIGEgYmV0dGVyIHZlcnNpb24gb2Ygd2hhdCBJ
IGhhdmUgaW4gbWluZDoKCiAgbGV0CiAgICB2YWwgeCA9ICJ3b3JsZCHigJ07CiAgaW4KICAgIHB1
dF9iaW5kaW5nX29mX3R5cGVfc3RyaW5nX2Zvcl9pZGVudGlmaWVyX3lfaW5fZ2xvYmFsX2Vudmly
b25tZW50IHg7CiAgICBCYWNrZW5kLkludGVyYWN0LnVzZVN0cmVhbSAoVGV4dElPLm9wZW5TdHJp
bmcgInByaW50IChcIkhlbGxvLCBcIl55KTsiKQogIGVuZAoKVGhhdCdzIGxlc3MgY29uZnVzaW5n
IHRoYW4gd2hhdCBJIHdyb3RlIGluIHRoZSBwcmV2aW91cyBtZXNzYWdlLiAgSXMKdGhlcmUgYW55
IHdheSB0byBpbXBsZW1lbnQKcHV0X2JpbmRpbmdfb2ZfdHlwZV9zdHJpbmdfZm9yX2lkZW50aWZp
ZXJfeV9pbl9nbG9iYWxfZW52aXJvbm1lbnQgc28KdGhhdCBpdCB3aWxsIHdvcmsgd2hlbiBjYWxs
ZWQgZnJvbSBpbnNpZGUgYSBwcm9ncmFtIGxpa2UgdGhpcz8KCi0tIApKb2UKCj4gSXMgdGhlcmUg
YW55dGhpbmcgSSBjYW4gcmVwbGFjZSBkb19tYWdpYyBieSBpbiB0aGUgYWJvdmUgZXhhbXBsZSB0
bwo+IG1ha2UgaXQgd29yaz8KPgo+IC0tIAo+IFRoYW5rcywKPgo+IEpvZQo+Cj4+IAktIEpvaG4K
Pj4KPj4gT24gRmViIDI2LCAyMDA5LCBhdCA3OjEwIEFNLCBKb2UgV2VsbHMgd3JvdGU6Cj4+Cj4+
PiBTTUwvTkogaGFzIGEgYnVpbHQtaW4gcHJldHR5IHByaW50ZXIgZm9yIHByaW50aW5nIHZhbHVl
cyBvZiB2YXJpb3VzCj4+PiB0eXBlcyB1c2VkIGJ5IHRoZSB0b3AtbGV2ZWwgUkVQTC4KPj4+IAo+
Pj4gSG93IGRvIEkgaW52b2tlIGl0IGZyb20gYSBwcm9ncmFtPwo+Pj4gCj4+PiBUaGVyZSBpcyBh
IGZ1bmN0aW9uIFByZXR0eVByaW50LnBwX3RvX3N0cmluZyBvZiB0eXBlIGludCAtPiAoc3RyZWFt
IC0+Cj4+PiAnYSAtPiB1bml0KSAtPiAnYSAtPiBzdHJpbmcsIGJ1dCB0byB1c2UgaXQgSSB3b3Vs
ZCBoYXZlIHRvIGdpdmUgaXQgYQo+Pj4gdmFsdWUgb2YgdHlwZSAoc3RyZWFtIC0+ICdhIC0+IHVu
aXQpLiAgSG93IGRvIEkgY29uc3RydWN0IHRoaXMKPj4+IGFyZ3VtZW50Pwo+Pj4gCj4+PiBUbyBt
YWtlIG15IHF1ZXN0aW9uIGNvbmNyZXRlLCBpbiB0aGUgZm9sbG93aW5nIFNNTCBwcm9ncmFtLCBi
eSB3aGF0IGRvCj4+PiBJIHJlcGxhY2Ug4oCcbWFnaWNfcHJldHR5X3ByaW50ZXLigJ0gdG8gbWFr
ZSB0aGUgcHJvZ3JhbSBwcmludCDigJxIYXBweSwKPj4+IGhhcHB5LCBqb3ksIGpveSHigJ0/Cj4+
PiAKPj4+ICBkYXRhdHlwZSBYeXp6eSA9IEMgb2YgWHl6enkgKiBYeXp6eSB8IEQgb2Ygc3RyaW5n
Cj4+PiAKPj4+ICB2YWwgcGx1Z2ggPSBDIChEICJoZWxsbyIsRCAic2FpbG9yIikKPj4+ICB2YWwg
cGx1Z2hfc3RyaW5nID0gIkMgKEQgXCJoZWxsb1wiLEQgXCJzYWlsb3JcIikiCj4+PiAKPj4+ICBp
ZiAoKG1hZ2ljX3ByZXR0eV9wcmludGVyIHBsdWdoKSA9IHBsdWdoX3N0cmluZykKPj4+ICAgICB0
aGVuIChwcmludCAiSGFwcHksIGhhcHB5LCBqb3ksIGpveSFcbiIpCj4+PiAgICAgZWxzZSAocmFp
c2UgKEZhaWwgIm1hZ2ljIHByZXR0eSBwcmludGVyIGdhdmUgd3JvbmcgcmVzdWx0IikpCj4+PiAK
Pj4+IEkndmUgYnJvd3NlZCBhcm91bmQgdGhlIHNvdXJjZSBmb3IgYSB3aGlsZSBhbmQgZmFpbGVk
IHRvIGZpbmQgd2hhdCBJCj4+PiBuZWVkLiAgQW55IGhpbnRzIHdvdWxkIGJlIGhlbHBmdWwuCj4+
PiAKPj4+IEknZCByYXRoZXIgbm90IHVzZSBCYWNrZW5kLkludGVyYWN0LmV2YWxTdHJlYW0gYW5k
IGNhcHR1cmUgdGhlIG91dHB1dAo+Pj4gc29tZWhvdywgYnV0IGlmIHRoYXQgaXMgbXkgb25seSBv
cHRpb24gSSB3b3VsZCBiZSBncmF0ZWZ1bCBmb3IgYW4KPj4+IGV4YW1wbGUgb2YgaG93IHRvIGRv
IGl0Lgo+Pj4gCj4+PiBUaGFua3MgZm9yIHlvdXIgdGltZSBpbiBjb25zaWRlcmluZyB0aGlzIHF1
ZXN0aW9uLgo+Pj4gCj4+PiAtLSAKPj4+IEpvZQoKCi0tIApIZXJpb3QtV2F0dCBVbml2ZXJzaXR5
IGlzIGEgU2NvdHRpc2ggY2hhcml0eQpyZWdpc3RlcmVkIHVuZGVyIGNoYXJpdHkgbnVtYmVyIFND
MDAwMjc4LgoKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpPcGVuIFNvdXJjZSBCdXNpbmVzcyBDb25m
ZXJlbmNlIChPU0JDKSwgTWFyY2ggMjQtMjUsIDIwMDksIFNhbiBGcmFuY2lzY28sIENBCi1PU0JD
IHRhY2tsZXMgdGhlIGJpZ2dlc3QgaXNzdWUgaW4gb3BlbiBzb3VyY2U6IE9wZW4gU291cmNpbmcg
dGhlIEVudGVycHJpc2UKLVN0cmF0ZWdpZXMgdG8gYm9vc3QgaW5ub3ZhdGlvbiBhbmQgY3V0IGNv
c3RzIHdpdGggb3BlbiBzb3VyY2UgcGFydGljaXBhdGlvbgotUmVjZWl2ZSBhICQ2MDAgZGlzY291
bnQgb2ZmIHRoZSByZWdpc3RyYXRpb24gZmVlIHdpdGggdGhlIHNvdXJjZSBjb2RlOiBTRkFECmh0
dHA6Ly9wLnNmLm5ldC9zZnUvWGN2TXpGOEgKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX18KU21sbmotbGlzdCBtYWlsaW5nIGxpc3QKU21sbmotbGlzdEBsaXN0
cy5zb3VyY2Vmb3JnZS5uZXQKaHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMvbGlz
dGluZm8vc21sbmotbGlzdAo=