[plt-scheme] backward compatibility?

From: Dmitry Lizorkin (lizorkin at ispras.ru)
Date: Tue Jun 17 05:21:22 EDT 2008

Hello!
I noticed that
(version)
==> "4.0"
in PLT 4.0, althouth
(version)
==> "360"
in PLT 360, for instance, i.e. the version number has recently been divided 
by 100.
What is then the reliable backward-compatible (and forward-compatible) way 
of writing something like
"if version < 299 then ... else ...",
resulting in the else-branch activated for PLT 4.0 and higher?

An alternative suitable variant would be a reliable 
backward-and-forward-compatible check with semantics
"if-defined 'bytes? then ... else ..."
at macro-expansion time (I recently noticed that the identifier bytes? is 
defined at macro-expansion time for 299 < version < 399 IIANM, but is not 
defined for later versions).

Regards,
Dmitry




Posted on the users mailing list.