6 Commity 3bfadba5ba ... 145e31ebac

Autor SHA1 Wiadomość Data
  Eric Bavier 145e31ebac dist: Release version 1.0.1. 4 lat temu
  Eric Bavier 51eee0ff19 dist: Fix distcheck with V=1. 4 lat temu
  Eric Bavier f64b4108ca dist: doc: Ensure fdl texi is distributed. 4 lat temu
  Eric Bavier e56df32eda doc: Fix compilation with recent texinfo. 4 lat temu
  Eric Bavier af536c36e1 build: Remove generated tests/package.m4 from version control. 4 lat temu
  Eric Bavier 0d61cd5c17 joy: Minor adjustments to support Guile 3.x. 4 lat temu
10 zmienionych plików z 62 dodań i 30 usunięć
  1. 1 0
      .gitignore
  2. 27 0
      ChangeLog
  3. 3 3
      Makefile.am
  4. 6 0
      NEWS
  5. 3 5
      README
  6. 5 6
      configure.ac
  7. 2 1
      doc.am
  8. 11 12
      doc/joy.texi
  9. 4 3
      language/joy/compile-tree-il.scm
  10. 0 0
      tests.am

+ 1 - 0
.gitignore

@@ -10,3 +10,4 @@ testsuite
 doc/joy.info
 doc/joy.info
 doc/version.texi
 doc/version.texi
 doc/stamp-vti
 doc/stamp-vti
+tests/package.m4

+ 27 - 0
ChangeLog

@@ -1,3 +1,30 @@
+2020-03-19  Eric Bavier  <bavier@member.fsf.org>
+
+	dist: Fix distcheck with V=1.
+	* Makefile.am (.scm.go)[AM_V_P]: Fix stdout redirection.
+
+	dist: Ensure fdl texi is distributed.
+	* doc.am (doc_joy_TEXINFOS): New variable.
+
+	doc: Fix compilation with recent texinfo.
+	* doc/joy.texi (Primitives)<exit>: Remove "bottom" indication, which
+	is intended to signify a sort of "null" result, but does not render
+	well in either .texi or .tex.
+	(Forth Aliases)<within, within?>: Use '@leq' and '<' rather than
+	@math.
+
+	build: Remove generated tests/package.m4 from version control.
+	* tests/package.m4: Delete file.
+	* .gitignore: Add it.
+	* tests.am (EXTRA_DIST): Remove it
+	(testsuite): Add dependency on package.m4
+
+	joy: Minor adjustments to support Guile 3.x.
+	* configure.ac: Add "3.0" to arguments for GUILE_PKG.  Adjust error
+	message for missing "guild".  Remove unnecessary AC_CONFIG_MACRO_DIR.
+	* language/joy/compile-tree-il.scm (call): Adjust version check to
+	achieve a true ">= 2.2".
+
 2018-02-10  Eric Bavier  <bavier@member.fsf.org>
 2018-02-10  Eric Bavier  <bavier@member.fsf.org>
 
 
 	joy: Support concatenating scripts and stack initialization.
 	joy: Support concatenating scripts and stack initialization.

+ 3 - 3
Makefile.am

@@ -1,5 +1,5 @@
 # Joy -- implementation of the Joy programming language
 # Joy -- implementation of the Joy programming language
-# Copyright © 2016, 2017 Eric Bavier <bavier@member.fsf.org>
+# Copyright © 2016, 2017, 2020 Eric Bavier <bavier@member.fsf.org>
 #
 #
 # Joy is free software; you can redistribute it and/or modify it under
 # Joy is free software; you can redistribute it and/or modify it under
 # the terms of the GNU General Public License as published by the Free
 # the terms of the GNU General Public License as published by the Free
@@ -48,12 +48,12 @@ GUILD_COMPILE_FLAGS =				\
 .scm.go:
 .scm.go:
 	$(AM_V_GUILEC)$(MKDIR_P) `dirname $@`;				\
 	$(AM_V_GUILEC)$(MKDIR_P) `dirname $@`;				\
 	unset GUILE_LOAD_COMPILED_PATH ;				\
 	unset GUILE_LOAD_COMPILED_PATH ;				\
-	$(AM_V_P) && stdout="&1" || stdout="/dev/null";			\
+	$(AM_V_P) || exec >/dev/null;					\
 	LC_ALL=C							\
 	LC_ALL=C							\
 	$(top_builddir)/pre-inst-env					\
 	$(top_builddir)/pre-inst-env					\
 	$(GUILD) compile -L "$(top_builddir)" -L "$(top_srcdir)"	\
 	$(GUILD) compile -L "$(top_builddir)" -L "$(top_srcdir)"	\
 	  $(GUILD_COMPILE_FLAGS) --target="$(host)"			\
 	  $(GUILD_COMPILE_FLAGS) --target="$(host)"			\
-	  -o "$@" "$<" >$$stdout
+	  -o "$@" "$<"
 
 
 SUFFIXES = .go
 SUFFIXES = .go
 
 

+ 6 - 0
NEWS

@@ -1,3 +1,9 @@
+# News for version 1.0.1
+
+This release contains a couple fixes to support use with Guile 3.0,
+and a few other minor bug-fixes.
+
+
 # News for version 1.0.0
 # News for version 1.0.0
 
 
 First official release!
 First official release!

+ 3 - 5
README

@@ -2,14 +2,12 @@ Joy is an implementation of the purely functional, concatenative
 programming language originally invented by Manfred Thun.  It is
 programming language originally invented by Manfred Thun.  It is
 implemented using Guile’s multi-language support.
 implemented using Guile’s multi-language support.
 
 
-Requirements
-------------
+## Requirements
 
 
-  - GNU Guile 2.2.x or 2.0.x
+  - GNU Guile 2.0.x or later
   - GNU Make
   - GNU Make
 
 
-Installation
-------------
+## Installation
 
 
 See `INSTALL` for installation instructions.  Joy follows the GNU
 See `INSTALL` for installation instructions.  Joy follows the GNU
 Coding Standards.
 Coding Standards.

+ 5 - 6
configure.ac

@@ -1,5 +1,5 @@
 # Joy -- implementation of the Joy programming language
 # Joy -- implementation of the Joy programming language
-# Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
+# Copyright © 2016, 2020 Eric Bavier <bavier@member.fsf.org>
 #
 #
 # Joy is free software; you can redistribute it and/or modify it under
 # Joy is free software; you can redistribute it and/or modify it under
 # the terms of the GNU General Public License as published by the Free
 # the terms of the GNU General Public License as published by the Free
@@ -15,8 +15,8 @@
 # along with Joy.  If not, see <http://www.gnu.org/licenses/>.
 # along with Joy.  If not, see <http://www.gnu.org/licenses/>.
 
 
 AC_PREREQ(2.68)
 AC_PREREQ(2.68)
-AC_INIT([Joy], [1.0.0], [bavier@member.fsf.org], [joy],
-  [http://www.nahne.info/joy])
+AC_INIT([Joy], [1.0.1], [bavier@member.fsf.org], [joy],
+  [http://notabug.org/bavier/joy-in-the-morning])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_AUX_DIR([build-aux])
 
 
 dnl Use -Wno-portability for custom silent rules
 dnl Use -Wno-portability for custom silent rules
@@ -26,17 +26,16 @@ AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects \
 # Enable silent rules by default.
 # Enable silent rules by default.
 AM_SILENT_RULES([yes])
 AM_SILENT_RULES([yes])
 
 
-AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_TESTDIR([tests],[scripts])
 AC_CONFIG_TESTDIR([tests],[scripts])
 
 
 AC_CANONICAL_HOST
 AC_CANONICAL_HOST
 
 
 dnl Search for 'guile' and 'guild'.  This macro defines
 dnl Search for 'guile' and 'guild'.  This macro defines
 dnl 'GUILE_EFFECTIVE_VERSION'.
 dnl 'GUILE_EFFECTIVE_VERSION'.
-GUILE_PKG([2.2 2.0])
+GUILE_PKG([3.0 2.2 2.0])
 GUILE_PROGS
 GUILE_PROGS
 if test "x$GUILD" = "x"; then
 if test "x$GUILD" = "x"; then
-   AC_MSG_ERROR(['guild' binary not found; please check your guile-2.x installation.])
+   AC_MSG_ERROR(['guild' binary not found; please check your guile installation.])
 fi
 fi
 dnl Installation directories for .scm and .go files.
 dnl Installation directories for .scm and .go files.
 guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"
 guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"

+ 2 - 1
doc.am

@@ -1,5 +1,5 @@
 # Joy -- implementation of the Joy programming language
 # Joy -- implementation of the Joy programming language
-# Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
+# Copyright © 2016, 2020 Eric Bavier <bavier@member.fsf.org>
 #
 #
 # Joy is free software; you can redistribute it and/or modify it under
 # Joy is free software; you can redistribute it and/or modify it under
 # the terms of the GNU General Public License as published by the Free
 # the terms of the GNU General Public License as published by the Free
@@ -15,3 +15,4 @@
 # along with Joy.  If not, see <http://www.gnu.org/licenses/>.
 # along with Joy.  If not, see <http://www.gnu.org/licenses/>.
 
 
 info_TEXINFOS = doc/joy.texi
 info_TEXINFOS = doc/joy.texi
+doc_joy_TEXINFOS = doc/fdl-1.3.texi

+ 11 - 12
doc/joy.texi

@@ -10,7 +10,7 @@
 @include version.texi
 @include version.texi
 
 
 @copying
 @copying
-Copyright @copyright{} 2016, 2017, 2018 Eric Bavier
+Copyright @copyright{} 2016, 2017, 2018, 2020 Eric Bavier
 
 
 Permission is granted to copy, distribute and/or modify this document
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
 under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -70,11 +70,10 @@ mostly compatible, except for the notable lack of support for ``sets''.
 @node Installation
 @node Installation
 @chapter Installation
 @chapter Installation
 
 
-Joy is available for download from its website at
-@url{http://nahne.info/joy}.  Building Joy from source uses the same
-build procedure as that for GNU software.  See the files @file{README}
-and @file{INSTALL} in the source tree for additional details.  It
-requires @url{http://gnu.org/software/guile/, GNU Guile}.
+Installing Joy from source uses the same build procedure as that for GNU
+software.  See the files @file{README} and @file{INSTALL} in the source
+tree for additional details.  It requires
+@url{http://gnu.org/software/guile/, GNU Guile}.
 
 
 After building Joy successfully, it is a good idea to run the test
 After building Joy successfully, it is a good idea to run the test
 suite.  Reporting any failures is a good way to help improve the
 suite.  Reporting any failures is a good way to help improve the
@@ -410,14 +409,14 @@ found, this file will be compiled and executed.  Typically files
 included with this operator contain only operator definitions.
 included with this operator contain only operator definitions.
 @end deffn
 @end deffn
 
 
-@deffn {Joy Operator} exit A @result{} @math{\perp}
+@deffn {Joy Operator} exit A @result{}
 This operator expects an integer as the topmost stack element.
 This operator expects an integer as the topmost stack element.
 Immediately stops execution and exits with the integer status at the
 Immediately stops execution and exits with the integer status at the
 top of the stack.
 top of the stack.
 
 
 @example
 @example
 [1 2 >] ["success" putchars] [1 exit] ifte .
 [1 2 >] ["success" putchars] [1 exit] ifte .
-@result{} @math{\perp}
+@result{}
 @end example
 @end example
 @end deffn
 @end deffn
 
 
@@ -718,13 +717,13 @@ This is an alias for @code{divmod}.
 @end deffn
 @end deffn
 
 
 @deffn {Joy Operator} within X Y Z @result{} t/f
 @deffn {Joy Operator} within X Y Z @result{} t/f
-Pushes @code{true} onto the stack if the integer inequality @math{Y
-\le X \lt Z} holds, otherwise @code{false}.
+Pushes @code{true} onto the stack if the integer inequality @var{Y}
+@leq{} @var{X} < @var{Z} holds, otherwise @code{false}.
 @end deffn
 @end deffn
 
 
 @deffn {Joy Operator} within? X Y Z @result{} t/f
 @deffn {Joy Operator} within? X Y Z @result{} t/f
-Pushes @code{true} onto the stack if the integer inequality @math{Y
-\le X \le Z} holds, otherwise @code{false}.
+Pushes @code{true} onto the stack if the integer inequality @var{Y}
+@leq{} @var{X} @leq{} @var{Z} holds, otherwise @code{false}.
 @end deffn
 @end deffn
 
 
 @deffn {Joy Operator} cr A @result{} A
 @deffn {Joy Operator} cr A @result{} A

+ 4 - 3
language/joy/compile-tree-il.scm

@@ -1,5 +1,5 @@
 ;;; compile-tree-il.scm -- compile Joy to tree-il.
 ;;; compile-tree-il.scm -- compile Joy to tree-il.
-;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2016, 2020 Eric Bavier <bavier@member.fsf.org>
 ;;;
 ;;;
 ;;; Joy is free software; you can redistribute it and/or modify it under
 ;;; Joy is free software; you can redistribute it and/or modify it under
 ;;; the terms of the GNU General Public License as published by the Free
 ;;; the terms of the GNU General Public License as published by the Free
@@ -23,8 +23,9 @@
 ;;; Guile 2.2 changed the external representation for a procedure call
 ;;; Guile 2.2 changed the external representation for a procedure call
 ;;; from 'apply' to 'call'.
 ;;; from 'apply' to 'call'.
 (define call
 (define call
-  (if (and (>= (string->number (major-version)) 2)
-           (>= (string->number (minor-version)) 2))
+  (if (or (> (string->number (major-version)) 2)
+          (and (= (string->number (major-version)) 2)
+               (>= (string->number (minor-version)) 2)))
       'call
       'call
       'apply))
       'apply))
 
 

+ 0 - 0
tests.am


Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików