unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: 02/04: gnu: Add Poly/ML.
       [not found] ` <20170717131416.4E46A22E3B@vcs0.savannah.gnu.org>
@ 2017-07-17 16:01   ` Mark H Weaver
  2017-07-17 16:21     ` Mark H Weaver
                       ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Mark H Weaver @ 2017-07-17 16:01 UTC (permalink / raw)
  To: Andy Patterson; +Cc: guix-devel

ludo@gnu.org (Ludovic Courtès) writes:

> civodul pushed a commit to branch master
> in repository guix.
>
> commit 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd
> Author: Andy Patterson <ajpatter@uwaterloo.ca>
> Date:   Sat Jul 15 18:17:25 2017 -0400
>
>     gnu: Add Poly/ML.
>     
>     * gnu/packages/sml.scm: New file.
>     * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.

Thank you for this!  I've become interested in some projects that
require Poly/ML, notably CakeML and Milawa/Jitawa which are based on
HOL4 and apparently require Poly/ML.  Now I can play with those things :)

> +       (modify-phases %standard-phases
> +         (add-after 'build 'build-compiler
> +           (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
> +             (define flags
> +               (if parallel-build?
> +                   (cons (format #f "-j~d" (parallel-job-count))
> +                         make-flags)
> +                   make-flags))
> +             (apply system* "make" (append flags (list "compiler"))))))))

This is not quite right.  Phase procedures return a boolean value to
indicate success or failure.  'system*' returns a numeric status code.
All numbers are treated as true by Scheme, so this will fail to detect
errors.  By our usual conventions, we would replace the final expression
above with:

  (zero? (apply system* "make" (append flags (list "compiler"))))

> +    (home-page "http://www.polyml.org/")
> +    (synopsis "Standard ML implementation")
> +    (description "Poly/ML is a Standard ML implementation.  It is fully
> +compatible with the ML97 standard.  It includes a thread library, a foreign
> +function interface, and a symbolic debugger.")

It might be worth mentioning that Poly/ML cannot be bootstrapped from
source code, and includes a precompiled version of itself, or at least
that's my understanding.

Anyway, thanks again for this contribution.

       Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 02/04: gnu: Add Poly/ML.
  2017-07-17 16:01   ` 02/04: gnu: Add Poly/ML Mark H Weaver
@ 2017-07-17 16:21     ` Mark H Weaver
  2017-07-18 11:50       ` Ludovic Courtès
  2017-07-17 16:27     ` Mark H Weaver
                       ` (2 subsequent siblings)
  3 siblings, 1 reply; 6+ messages in thread
From: Mark H Weaver @ 2017-07-17 16:21 UTC (permalink / raw)
  To: Andy Patterson; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> writes:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> civodul pushed a commit to branch master
>> in repository guix.
>>
>> commit 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd
>> Author: Andy Patterson <ajpatter@uwaterloo.ca>
>> Date:   Sat Jul 15 18:17:25 2017 -0400
>>
>>     gnu: Add Poly/ML.
>>     
>>     * gnu/packages/sml.scm: New file.
>>     * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
>
> Thank you for this!  I've become interested in some projects that
> require Poly/ML, notably CakeML and Milawa/Jitawa which are based on
> HOL4 and apparently require Poly/ML.  Now I can play with those things :)

This failed to build on my x86_64 system running GuixSD.  Here's the
tail of the build log:

--8<---------------cut here---------------start------------->8---
Making XWINDOWS_SIG
Making XEVENT_SIG
Making XTYPES_SIG
Created signature XTYPES_SIG
Created signature XEVENT_SIG
Created signature XWINDOWS_SIG
Created structure XWindows
Making Motif
Making MotifTypes
Created structure MotifTypes
Making XmTypes
Created structure XmTypes
Making MotifCore
Created structure MotifCore
Making InitialiseCore
Created structure InitialiseCore
Making MOTIF_SIG
Making XM_TYPES
Making MOTIF_TYPES
Created signature MOTIF_TYPES
Created signature XM_TYPES
Created signature MOTIF_SIG
Created structure Motif
make[1]: *** [Makefile:1143: polyexport.o] Error 1
make[1]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
make: *** [Makefile:706: check-recursive] Error 1
phase `check' failed after 26.5 seconds
builder for `/gnu/store/g8fkhnji7cizvlgcxh1nyr5jplpmh6fd-polyml-5.7.drv' failed with exit code 1
guix package: error: build failed: build of `/gnu/store/g8fkhnji7cizvlgcxh1nyr5jplpmh6fd-polyml-5.7.drv' failed
--8<---------------cut here---------------end--------------->8---

       Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 02/04: gnu: Add Poly/ML.
  2017-07-17 16:01   ` 02/04: gnu: Add Poly/ML Mark H Weaver
  2017-07-17 16:21     ` Mark H Weaver
@ 2017-07-17 16:27     ` Mark H Weaver
  2017-07-18  1:13     ` Andy Patterson
  2017-07-18 11:51     ` Ludovic Courtès
  3 siblings, 0 replies; 6+ messages in thread
From: Mark H Weaver @ 2017-07-17 16:27 UTC (permalink / raw)
  To: Andy Patterson; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> writes:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> civodul pushed a commit to branch master
>> in repository guix.
>>
>> commit 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd
>> Author: Andy Patterson <ajpatter@uwaterloo.ca>
>> Date:   Sat Jul 15 18:17:25 2017 -0400
>>
>>     gnu: Add Poly/ML.
>>     
>>     * gnu/packages/sml.scm: New file.
>>     * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
>
> Thank you for this!  I've become interested in some projects that
> require Poly/ML, notably CakeML and Milawa/Jitawa which are based on
> HOL4 and apparently require Poly/ML.  Now I can play with those things :)

I attempted to build it a second time, mainly to add '--keep-failed' to
the guix build options.  It failed again but in a different place:

--8<---------------cut here---------------start------------->8---
Making InitialiseCore
Created structure InitialiseCore
Making MOTIF_SIG
Making XM_TYPES
Making MOTIF_TYPES
Created signature MOTIF_TYPES
Created signature XM_TYPES
Created signature MOTIF_SIG
Created structure Motif
/gnu/store/k7029k5va68lkapbzcycdzj7m5bjb4b8-bash-4.4.12/bin/bash ./libtool  --tag=CC   --mode=link gcc   -Wall -fno-strict-aliasing -O3    -o poly  polyexport.o  libpolymain/libpolymain.la libpolyml/libpolyml.la  -lpthread -lffi -lgmp -lXm -lXt -lX11 -lm -ldl -lstdc++ -lgcc_s -lgcc
libtool: link: gcc -Wall -fno-strict-aliasing -O3 -o poly polyexport.o  libpolymain/.libs/libpolymain.a -L/gnu/store/wfy8pwxjbyc9033sqb1snyfla3h8d02p-libice-1.0.9/lib -L/gnu/store/6z06w9zfnq3zcr50vcv2wvzr5wpzvy7l-util-linux-2.29.2/lib -L/gnu/store/gdx6vk579px16dgv60hgrr1c2k1pwsni-libx11-1.6.5/lib -L/gnu/store/w5b3db8y2rq3d73b30m4c5z0ql270r9a-libsm-1.2.2/lib -L/gnu/store/fpbm0nvl2zi4jksm22kr1mq3hfw79xdn-libxcb-1.12/lib -L/gnu/store/dr4qfgqmcv8vjfyi5bh6iqxmcnr5psxh-libxau-1.0.8/lib -L/gnu/store/ja06pq19g0cf2122kimk15z5yn0az73j-libxdmcp-1.1.2/lib libpolyml/.libs/libpolyml.a -lpthread /gnu/store/85ss68qvpfb62chf2wapp3b8gfqv5xc6-libffi-3.2.1/lib/libffi.so /gnu/store/wak3m4kdkgw010qn1ksnqlggvklp4b24-gmp-6.1.2/lib/libgmp.so /gnu/store/j7c87ss5vp909z2yzz7d8z6vigx93zkj-lesstif-0.95.2/lib/libXm.so /gnu/store/0fzh44zpdw1h2dwpzgfw2lic05y4k6md-libxt-1.1.5/lib/libXt.so /gnu/store/w5b3db8y2rq3d73b30m4c5z0ql270r9a-libsm-1.2.2/lib/libSM.so /gnu/store/6z06w9zfnq3zcr50vcv2wvzr5wpzvy7l-util-linux-2.29.2/lib/libuuid.so /gnu/store/wfy8pwxjbyc9033sqb1snyfla3h8d02p-libice-1.0.9/lib/libICE.so /gnu/store/gdx6vk579px16dgv60hgrr1c2k1pwsni-libx11-1.6.5/lib/libX11.so /gnu/store/fpbm0nvl2zi4jksm22kr1mq3hfw79xdn-libxcb-1.12/lib/libxcb.so /gnu/store/dr4qfgqmcv8vjfyi5bh6iqxmcnr5psxh-libxau-1.0.8/lib/libXau.so /gnu/store/ja06pq19g0cf2122kimk15z5yn0az73j-libxdmcp-1.1.2/lib/libXdmcp.so /gnu/store/a3qkf2l3jqnpqibcg2iwbkak4d6scx28-libbsd-0.8.3/lib/libbsd.so -lrt -ldl /gnu/store/dhc2iy059hi91fk55dcv79z09kp6500y-gcc-5.4.0-lib/lib/libstdc++.so -lm -lgcc_s -lgcc -Wl,-rpath -Wl,/gnu/store/dhc2iy059hi91fk55dcv79z09kp6500y-gcc-5.4.0-lib/lib -Wl,-rpath -Wl,/gnu/store/85ss68qvpfb62chf2wapp3b8gfqv5xc6-libffi-3.2.1/lib -Wl,-rpath -Wl,/gnu/store/wak3m4kdkgw010qn1ksnqlggvklp4b24-gmp-6.1.2/lib -Wl,-rpath -Wl,/gnu/store/j7c87ss5vp909z2yzz7d8z6vigx93zkj-lesstif-0.95.2/lib -Wl,-rpath -Wl,/gnu/store/0fzh44zpdw1h2dwpzgfw
2lic05y4k6md-libxt-1.1.5/lib -Wl,-rpath -Wl,/gnu/store/w5b3db8y2rq3d73b30m4c5z0ql270r9a-libsm-1.2.2/lib -Wl,-rpath -Wl,/gnu/store/6z06w9zfnq3zcr50vcv2wvzr5wpzvy7l-util-linux-2.29.2/lib -Wl,-rpath -Wl,/gnu/store/wfy8pwxjbyc9033sqb1snyfla3h8d02p-libice-1.0.9/lib -Wl,-rpath -Wl,/gnu/store/gdx6vk579px16dgv60hgrr1c2k1pwsni-libx11-1.6.5/lib -Wl,-rpath -Wl,/gnu/store/fpbm0nvl2zi4jksm22kr1mq3hfw79xdn-libxcb-1.12/lib -Wl,-rpath -Wl,/gnu/store/dr4qfgqmcv8vjfyi5bh6iqxmcnr5psxh-libxau-1.0.8/lib -Wl,-rpath -Wl,/gnu/store/ja06pq19g0cf2122kimk15z5yn0az73j-libxdmcp-1.1.2/lib -Wl,-rpath -Wl,/gnu/store/a3qkf2l3jqnpqibcg2iwbkak4d6scx28-libbsd-0.8.3/lib -Wl,-rpath -Wl,/gnu/store/dhc2iy059hi91fk55dcv79z09kp6500y-gcc-5.4.0-lib/lib -Wl,-rpath -Wl,/gnu/store/85ss68qvpfb62chf2wapp3b8gfqv5xc6-libffi-3.2.1/lib -Wl,-rpath -Wl,/gnu/store/wak3m4kdkgw010qn1ksnqlggvklp4b24-gmp-6.1.2/lib -Wl,-rpath -Wl,/gnu/store/j7c87ss5vp909z2yzz7d8z6vigx93zkj-lesstif-0.95.2/lib -Wl,-rpath -Wl,/gnu/store/0fzh44zpdw1h2dwpzgfw2lic05y4k6md-libxt-1.1.5/lib -Wl,-rpath -Wl,/gnu/store/w5b3db8y2rq3d73b30m4c5z0ql270r9a-libsm-1.2.2/lib -Wl,-rpath -Wl,/gnu/store/6z06w9zfnq3zcr50vcv2wvzr5wpzvy7l-util-linux-2.29.2/lib -Wl,-rpath -Wl,/gnu/store/wfy8pwxjbyc9033sqb1snyfla3h8d02p-libice-1.0.9/lib -Wl,-rpath -Wl,/gnu/store/gdx6vk579px16dgv60hgrr1c2k1pwsni-libx11-1.6.5/lib -Wl,-rpath -Wl,/gnu/store/fpbm0nvl2zi4jksm22kr1mq3hfw79xdn-libxcb-1.12/lib -Wl,-rpath -Wl,/gnu/store/dr4qfgqmcv8vjfyi5bh6iqxmcnr5psxh-libxau-1.0.8/lib -Wl,-rpath -Wl,/gnu/store/ja06pq19g0cf2122kimk15z5yn0az73j-libxdmcp-1.1.2/lib -Wl,-rpath -Wl,/gnu/store/a3qkf2l3jqnpqibcg2iwbkak4d6scx28-libbsd-0.8.3/lib
make  check-local
make[2]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
make  all-recursive
make[3]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
Making all in libpolyml
make[4]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/libpolyml'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/libpolyml'
Making all in libpolymain
make[4]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/libpolymain'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/libpolymain'
Making all in .
make[4]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
make[4]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
Making all in modules
make[4]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/modules'
Making all in IntInfAsInt
make[5]: Entering directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/modules/IntInfAsInt'
echo "use \"./ROOT.sml\";" | ../../poly -q -error-exit
make[5]: *** [Makefile:461: IntInfAsInt] Error 1
make[5]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/modules/IntInfAsInt'
make[4]: *** [Makefile:364: all-recursive] Error 1
make[4]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7/modules'
make[3]: *** [Makefile:706: all-recursive] Error 1
make[3]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
make[2]: *** [Makefile:470: all] Error 2
make[2]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
make[1]: *** [Makefile:997: check-am] Error 2
make[1]: Leaving directory '/tmp/guix-build-polyml-5.7.drv-0/polyml-5.7'
make: *** [Makefile:706: check-recursive] Error 1
phase `check' failed after 9.1 seconds
note: keeping build directory `/tmp/guix-build-polyml-5.7.drv-0'
builder for `/gnu/store/g8fkhnji7cizvlgcxh1nyr5jplpmh6fd-polyml-5.7.drv' failed with exit code 1
guix package: error: build failed: build of `/gnu/store/g8fkhnji7cizvlgcxh1nyr5jplpmh6fd-polyml-5.7.drv' failed
--8<---------------cut here---------------end--------------->8---

       Mark

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 02/04: gnu: Add Poly/ML.
  2017-07-17 16:01   ` 02/04: gnu: Add Poly/ML Mark H Weaver
  2017-07-17 16:21     ` Mark H Weaver
  2017-07-17 16:27     ` Mark H Weaver
@ 2017-07-18  1:13     ` Andy Patterson
  2017-07-18 11:51     ` Ludovic Courtès
  3 siblings, 0 replies; 6+ messages in thread
From: Andy Patterson @ 2017-07-18  1:13 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Hi Mark,

On Mon, 17 Jul 2017 12:01:33 -0400
Mark H Weaver <mhw@netris.org> wrote:

> ludo@gnu.org (Ludovic Courtès) writes:
> 
> > civodul pushed a commit to branch master
> > in repository guix.
> >
> > commit 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd
> > Author: Andy Patterson <ajpatter@uwaterloo.ca>
> > Date:   Sat Jul 15 18:17:25 2017 -0400
> >
> >     gnu: Add Poly/ML.
> >     
> >     * gnu/packages/sml.scm: New file.
> >     * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.  
> 
> Thank you for this!  I've become interested in some projects that
> require Poly/ML, notably CakeML and Milawa/Jitawa which are based on
> HOL4 and apparently require Poly/ML.  Now I can play with those
> things :)
> 
> > +       (modify-phases %standard-phases
> > +         (add-after 'build 'build-compiler
> > +           (lambda* (#:key make-flags parallel-build?
> > #:allow-other-keys)
> > +             (define flags
> > +               (if parallel-build?
> > +                   (cons (format #f "-j~d" (parallel-job-count))
> > +                         make-flags)
> > +                   make-flags))
> > +             (apply system* "make" (append flags (list
> > "compiler"))))))))  
> 
> This is not quite right.  Phase procedures return a boolean value to
> indicate success or failure.  'system*' returns a numeric status code.
> All numbers are treated as true by Scheme, so this will fail to detect
> errors.  By our usual conventions, we would replace the final
> expression above with:
> 
>   (zero? (apply system* "make" (append flags (list "compiler"))))
> 

Oh yeah; whoops. Appending a patch to fix that.
 
> > +    (home-page "http://www.polyml.org/")
> > +    (synopsis "Standard ML implementation")
> > +    (description "Poly/ML is a Standard ML implementation.  It is
> > fully +compatible with the ML97 standard.  It includes a thread
> > library, a foreign +function interface, and a symbolic debugger.")  
> 
> It might be worth mentioning that Poly/ML cannot be bootstrapped from
> source code, and includes a precompiled version of itself, or at least
> that's my understanding.

Hmm, I worked on this because I wanted to have a non-bootstrapped sml.
I looked all over the place for binaries and I didn't find any. I guess
we could just ask?

> 
> Anyway, thanks again for this contribution.
> 
>        Mark

As for your building issues - I didn't experience any issues so I'm
not sure what to suggest. I'm not familiar with the project. Maybe we
need to turn off parallel builds or tests?

Thanks,

--
Andy

From 2505b5806e6a1cb88947dc253bd0f22ce5ce9fe1 Mon Sep 17 00:00:00 2001
From: Andy Patterson <ajpatter@uwaterloo.ca>
Date: Mon, 17 Jul 2017 20:51:52 -0400
Subject: [PATCH] gnu: polyml: Ensure that the compiler is built.

* gnu/packages/sml.scm (polyml)[arguments]<#:phases>: Check the return code of
"make compiler" in the 'build-compiler phase.
---
 gnu/packages/sml.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/sml.scm b/gnu/packages/sml.scm
index 6e57c4a4a..088109465 100644
--- a/gnu/packages/sml.scm
+++ b/gnu/packages/sml.scm
@@ -60,7 +60,8 @@
                    (cons (format #f "-j~d" (parallel-job-count))
                          make-flags)
                    make-flags))
-             (apply system* "make" (append flags (list "compiler"))))))))
+             (zero?
+              (apply system* "make" (append flags (list "compiler")))))))))
     (home-page "http://www.polyml.org/")
     (synopsis "Standard ML implementation")
     (description "Poly/ML is a Standard ML implementation.  It is fully
-- 
2.13.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: 02/04: gnu: Add Poly/ML.
  2017-07-17 16:21     ` Mark H Weaver
@ 2017-07-18 11:50       ` Ludovic Courtès
  0 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2017-07-18 11:50 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> skribis:

> Mark H Weaver <mhw@netris.org> writes:
>
>> ludo@gnu.org (Ludovic Courtès) writes:
>>
>>> civodul pushed a commit to branch master
>>> in repository guix.
>>>
>>> commit 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd
>>> Author: Andy Patterson <ajpatter@uwaterloo.ca>
>>> Date:   Sat Jul 15 18:17:25 2017 -0400
>>>
>>>     gnu: Add Poly/ML.
>>>     
>>>     * gnu/packages/sml.scm: New file.
>>>     * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
>>
>> Thank you for this!  I've become interested in some projects that
>> require Poly/ML, notably CakeML and Milawa/Jitawa which are based on
>> HOL4 and apparently require Poly/ML.  Now I can play with those things :)
>
> This failed to build on my x86_64 system running GuixSD.  Here's the
> tail of the build log:

FWIW it succeeded on my laptop.  Could it be a parallel-build issue?

Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: 02/04: gnu: Add Poly/ML.
  2017-07-17 16:01   ` 02/04: gnu: Add Poly/ML Mark H Weaver
                       ` (2 preceding siblings ...)
  2017-07-18  1:13     ` Andy Patterson
@ 2017-07-18 11:51     ` Ludovic Courtès
  3 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2017-07-18 11:51 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Mark H Weaver <mhw@netris.org> skribis:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> civodul pushed a commit to branch master
>> in repository guix.
>>
>> commit 9b7ee28d5700b47ae34bd47c32d250f042fbdbbd
>> Author: Andy Patterson <ajpatter@uwaterloo.ca>
>> Date:   Sat Jul 15 18:17:25 2017 -0400
>>
>>     gnu: Add Poly/ML.
>>     
>>     * gnu/packages/sml.scm: New file.
>>     * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
>
> Thank you for this!  I've become interested in some projects that
> require Poly/ML, notably CakeML and Milawa/Jitawa which are based on
> HOL4 and apparently require Poly/ML.  Now I can play with those things :)
>
>> +       (modify-phases %standard-phases
>> +         (add-after 'build 'build-compiler
>> +           (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
>> +             (define flags
>> +               (if parallel-build?
>> +                   (cons (format #f "-j~d" (parallel-job-count))
>> +                         make-flags)
>> +                   make-flags))
>> +             (apply system* "make" (append flags (list "compiler"))))))))
>
> This is not quite right.  Phase procedures return a boolean value to
> indicate success or failure.  'system*' returns a numeric status code.
> All numbers are treated as true by Scheme, so this will fail to detect
> errors.  By our usual conventions, we would replace the final expression
> above with:
>
>   (zero? (apply system* "make" (append flags (list "compiler"))))
>
>> +    (home-page "http://www.polyml.org/")
>> +    (synopsis "Standard ML implementation")
>> +    (description "Poly/ML is a Standard ML implementation.  It is fully
>> +compatible with the ML97 standard.  It includes a thread library, a foreign
>> +function interface, and a symbolic debugger.")
>
> It might be worth mentioning that Poly/ML cannot be bootstrapped from
> source code, and includes a precompiled version of itself, or at least
> that's my understanding.

Thank you for catching these things that I had overlooked!

Ludo’.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-07-18 11:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20170717131414.9416.24762@vcs0.savannah.gnu.org>
     [not found] ` <20170717131416.4E46A22E3B@vcs0.savannah.gnu.org>
2017-07-17 16:01   ` 02/04: gnu: Add Poly/ML Mark H Weaver
2017-07-17 16:21     ` Mark H Weaver
2017-07-18 11:50       ` Ludovic Courtès
2017-07-17 16:27     ` Mark H Weaver
2017-07-18  1:13     ` Andy Patterson
2017-07-18 11:51     ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).