Subject: [PATCH] Remove woman-push and woman-pop

From: [email-masked]
Date: Fri, 04 Aug 2017 22:26:08 -0400

Severity: wishlist
Tags: patch

These macros are not pulling their weight.

>From 7bff7520808aed06adf86360906adb1d1b62f096 Mon Sep 17 00:00:00 2001
From: Noam Postavsky <[email-masked]>
Date: Thu, 29 Jun 2017 21:51:04 -0400
Subject: [PATCH] * lisp/woman.el (woman-push, woman-pop): Remove.

(woman2-RS): Use plain `push' instead of `woman-push'.
(woman2-RE): Conditionally `pop' instead of `woman-pop'.
---
 lisp/woman.el | 21 ++++++---------------
 1 file changed, 6 insertions(+), 15 deletions(-)

diff --git a/lisp/woman.el b/lisp/woman.el
index aa856c3957..6620ce4a2b 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -4261,22 +4261,11 @@ (defun woman2-get-prevailing-indent (&optional leave-eol)
       (if (> i 0) (setq woman-prevailing-indent i))))
   woman-prevailing-indent)
 
-(defmacro woman-push (value stack)
-  "Push VALUE onto STACK."
-  `(setq ,stack (cons ,value ,stack)))
-
-(defmacro woman-pop (variable stack)
-  "Pop into VARIABLE the value at the top of STACK.
-Allow for mismatched requests!"
-  `(if ,stack
-       (setq ,variable (car ,stack)
-	     ,stack (cdr ,stack))))
-
 (defun woman2-RS (to)
   ".RS i -- Start relative indent, move left margin in distance i.
 Set prevailing indent to 5 for nested indents.  Format paragraphs upto TO."
-  (woman-push woman-left-margin woman-RS-left-margin)
-  (woman-push woman-prevailing-indent woman-RS-prevailing-indent)
+  (push woman-left-margin woman-RS-left-margin)
+  (push woman-prevailing-indent woman-RS-prevailing-indent)
   (setq woman-left-margin (+ woman-left-margin
 			     (woman2-get-prevailing-indent))
 	woman-prevailing-indent woman-default-indent)
@@ -4285,8 +4274,10 @@ (defun woman2-RS (to)
 (defun woman2-RE (to)
   ".RE -- End of relative indent.  Format paragraphs upto TO.
 Set prevailing indent to amount of starting .RS."
-  (woman-pop woman-left-margin woman-RS-left-margin)
-  (woman-pop woman-prevailing-indent woman-RS-prevailing-indent)
+  (when woman-RS-left-margin
+    (setq woman-left-margin (pop woman-RS-left-margin)))
+  (when woman-RS-prevailing-indent
+    (setq woman-prevailing-indent (pop woman-RS-prevailing-indent)))
   (woman-delete-line 1)			; ignore any arguments
   (woman2-format-paragraphs to woman-left-margin))
 
-- 
2.11.1