[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/geiser-chicken 8bd8b5c 031/102: Converts toplevel methods
From: |
Philip Kaludercic |
Subject: |
[nongnu] elpa/geiser-chicken 8bd8b5c 031/102: Converts toplevel methods to prefixed methods |
Date: |
Sun, 1 Aug 2021 18:26:50 -0400 (EDT) |
branch: elpa/geiser-chicken
commit 8bd8b5c4ca86e40c6a085fa880693f384d5498c3
Author: Dan Leslie <dan@ironoxide.ca>
Commit: Dan Leslie <dan@ironoxide.ca>
Converts toplevel methods to prefixed methods
This seems to improve speed; in a large environment I witnessed a
regular 100ms increase in speed for autodoc.
---
elisp/geiser-chicken.el | 34 ++++++++++++++--------------------
1 file changed, 14 insertions(+), 20 deletions(-)
diff --git a/elisp/geiser-chicken.el b/elisp/geiser-chicken.el
index fc28e63..d3e4b4e 100644
--- a/elisp/geiser-chicken.el
+++ b/elisp/geiser-chicken.el
@@ -141,20 +141,17 @@ This function uses `geiser-chicken-init-file' if it
exists."
;;; Evaluation support:
(defun geiser-chicken--geiser-procedure (proc &rest args)
- (let ((fmt
- (case proc
- ((eval compile)
- (let ((form (mapconcat 'identity (cdr args) " ")))
- (format ",geiser-eval %s %s" (or (car args) "#f") form)))
- ((load-file compile-file)
- (format ",geiser-load-file %s" (car args)))
- ((no-values)
- ",geiser-no-values")
- (t
- (let ((form (mapconcat 'identity args " ")))
- (format "(geiser-%s %s)" proc form))))))
- ;;(message fmt)
- fmt))
+ (case proc
+ ((eval compile)
+ (let ((form (mapconcat 'identity (cdr args) " ")))
+ (format "(geiser-eval %s '%s)" (or (car args) "#f") form)))
+ ((load-file compile-file)
+ (format "(geiser-load-file %s)" (car args)))
+ ((no-values)
+ "(geiser-no-values)")
+ (t
+ (let ((form (mapconcat 'identity args " ")))
+ (format "(geiser-%s %s)" proc form)))))
(defconst geiser-chicken--module-re
"( *module +\\(([^)]+)\\|[^ ]+\\)\\|( *define-library +\\(([^)]+)\\|[^
]+\\)")
@@ -195,14 +192,11 @@ This function uses `geiser-chicken-init-file' if it
exists."
(apply
'max
(append
- (list (save-excursion (beginning-of-line) (point))
- (save-excursion (skip-syntax-backward "^'-()>"
-
distance-to-beginning-of-line)
+ (list (save-excursion (skip-syntax-backward "^'(>"
distance-to-beginning-of-line)
(point)))
(mapcar
(lambda (match-string)
- (save-excursion (skip-chars-backward match-string
- distance-to-beginning-of-line)
+ (save-excursion (skip-chars-backward match-string
distance-to-beginning-of-line)
(point)))
geiser-chicken-prefix-delimiters)))))
@@ -297,7 +291,7 @@ This function uses `geiser-chicken-init-file' if it exists."
(let ((load-sequence
(cond
(force-load
- (format "(load \"%s\")\n" source))
+ (format "(load \"%s\")\n(import geiser)\n" source))
((file-exists-p target)
(format "%s(load \"%s\")(import geiser)%s\n"
suppression-prefix target suppression-postfix))
- [nongnu] elpa/geiser-chicken d83d2df 009/102: Now suppress loading messages, (continued)
- [nongnu] elpa/geiser-chicken d83d2df 009/102: Now suppress loading messages, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 6782f4a 016/102: Kill those TABs, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken d6df78f 014/102: Merge remote-tracking branch 'dleslie/faster-output-handling', Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 53128cb 020/102: Sorted and line-split crunch symbols., Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 89ffe41 022/102: Add 'geiser-syntax--simple-keywords', Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 242d4ae 024/102: Use 'geiser-chicken-extra-keywords', Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken c2dcda3 025/102: Clean up indentation rules, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 7b2e9ce 027/102: Merge remote-tracking branch 'dleslie/master', Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken ce93e6b 028/102: Follow suit and complete quoted symbols in all schemes, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 309c67f 034/102: Minor improvements, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 8bd8b5c 031/102: Converts toplevel methods to prefixed methods,
Philip Kaludercic <=
- [nongnu] elpa/geiser-chicken a4c49f2 033/102: Turn off debug log, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken bcd1a09 037/102: Use OS-specific quotes when asking for versions, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 9b9b180 039/102: Fixes for Literals, Errors and Modules, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 935a114 040/102: Allows redefinition of modules, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 95d19aa 044/102: Minor changes to help with debugging completions, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 2098767 046/102: Quoting binary on version checks (issue #117), Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 42b18d5 045/102: Minor cleanup, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 1ff0274 048/102: Performance Improvements, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 0bcd595 050/102: Fuzzy matching for Chicken AutoDoc and Completions, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-chicken 5cc0dd2 052/102: Fix for #127, Philip Kaludercic, 2021/08/01