LISP-IMPLEMENTATION-VERSION returns executing JVM as second value.

parent 1cde61e4
......@@ -407,7 +407,7 @@ public final class Primitives {
};
// ### values
private static final Primitive VALUES = new pf_values();
public static final Primitive VALUES = new pf_values();
private static final class pf_values extends Primitive {
pf_values() {
super(Symbol.VALUES, "&rest object");
......
......@@ -34,6 +34,7 @@
package org.armedbear.lisp;
import java.math.BigInteger;
import java.text.MessageFormat;
// ### lisp_implementation_version
// lisp_implementation_version <no arguments> => description
......@@ -47,7 +48,14 @@ public final class lisp_implementation_version extends Primitive
@Override
public LispObject execute()
{
return new SimpleString(Version.getVersion());
String vendor = System.getProperty("java.vendor");
vendor = vendor.replace(" ", "_");
String jdkVersion = MessageFormat.format("{0}-{1}-{2})",
vendor,
System.getProperty("os.arch"),
System.getProperty("java.runtime.version"));
return Primitives.VALUES.execute(new SimpleString(Version.getVersion()),
new SimpleString(jdkVersion));
}
private static final lisp_implementation_version LISP_IMPLEMENTATION_VERSION =
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment