<feed xmlns='http://www.w3.org/2005/Atom'>
<title>proof-general/obsolete, branch master</title>
<subtitle>Emacs plugins for proof management systems</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/'/>
<entry>
<title>Fix remaining uses of CL; Make files more declarative</title>
<updated>2018-12-14T22:11:19+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2018-12-14T03:57:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=9a25320acf24020fc0e2b97589f9d996f3d1d4fb'/>
<id>9a25320acf24020fc0e2b97589f9d996f3d1d4fb</id>
<content type='text'>
Emacs occasionally loads Elisp files just to get more info (e.g. for C-h f),
so loading a file should "no effect".  Fix the most obvious such effects:
the splash screen and the autotests by moving those effects into a function.

* coq/coq-autotest.el: Make it declarative.  Use lexical-binding.
(coq-autotest): New function holding the code that used to be at top-level.

* generic/proof.el: Use lexical-binding.
Don't call proof-splash-message just because we're being loaded.

* generic/proof-script.el: Use lexical-scoping; fix all warnings.
(pg-show-all-portions): Simplify the code with a closure.
(proof-activate-scripting): Declare activated-interactively as dyn-scoped.
(proof--splash-done): New var.
(proof-mode): Call proof-splash-message upon first use.

* generic/proof-splash.el (proof-splash-message): Don't check
byte-compile-current-file now that we're only called when the mode
is activated.

* acl2/acl2.el (auto-mode-alist): Use `add-to-list` and \'.

* coq/coq-db.el (coq-build-menu-from-db-internal): Avoid silly O(N²).

* coq/coq-seq-compile.el:
* coq/coq-par-test.el:
* coq/coq-par-compile.el: Fix leftover uses of CL's `assert`.

* generic/proof-utils.el:
* generic/pg-movie.el:
* etc/testsuite/pg-test.el:
* coq/coq-syntax.el: Fix leftover uses of CL's `incf`.

* generic/pg-autotest.el: Fix leftover uses of CL's `decf`.

* obsolete/plastic/plastic.el (plastic-preprocessing): Fix leftover use
of CL's `loop`.

* generic/pg-user.el (proof-add-completions): Do nothing if no
proof-assistant is set yet (i.e. during byte-compilation).
(byte-compile-current-file): No need to test this any more.

* generic/proof-syntax.el (proof-regexp-alt-list): Use mapconcat.
Remove unnecessary "\\(?:...\\)".
(proof-regexp-alt): Redefine in terms of proof-regexp-alt-list.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Emacs occasionally loads Elisp files just to get more info (e.g. for C-h f),
so loading a file should "no effect".  Fix the most obvious such effects:
the splash screen and the autotests by moving those effects into a function.

* coq/coq-autotest.el: Make it declarative.  Use lexical-binding.
(coq-autotest): New function holding the code that used to be at top-level.

* generic/proof.el: Use lexical-binding.
Don't call proof-splash-message just because we're being loaded.

* generic/proof-script.el: Use lexical-scoping; fix all warnings.
(pg-show-all-portions): Simplify the code with a closure.
(proof-activate-scripting): Declare activated-interactively as dyn-scoped.
(proof--splash-done): New var.
(proof-mode): Call proof-splash-message upon first use.

* generic/proof-splash.el (proof-splash-message): Don't check
byte-compile-current-file now that we're only called when the mode
is activated.

* acl2/acl2.el (auto-mode-alist): Use `add-to-list` and \'.

* coq/coq-db.el (coq-build-menu-from-db-internal): Avoid silly O(N²).

* coq/coq-seq-compile.el:
* coq/coq-par-test.el:
* coq/coq-par-compile.el: Fix leftover uses of CL's `assert`.

* generic/proof-utils.el:
* generic/pg-movie.el:
* etc/testsuite/pg-test.el:
* coq/coq-syntax.el: Fix leftover uses of CL's `incf`.

* generic/pg-autotest.el: Fix leftover uses of CL's `decf`.

* obsolete/plastic/plastic.el (plastic-preprocessing): Fix leftover use
of CL's `loop`.

* generic/pg-user.el (proof-add-completions): Do nothing if no
proof-assistant is set yet (i.e. during byte-compilation).
(byte-compile-current-file): No need to test this any more.

* generic/proof-syntax.el (proof-regexp-alt-list): Use mapconcat.
Remove unnecessary "\\(?:...\\)".
(proof-regexp-alt): Redefine in terms of proof-regexp-alt-list.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use `cl-lib` instead of `cl` everywhere</title>
<updated>2018-12-13T15:35:04+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2018-12-12T20:20:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=632a3d7f9ded16faaf58e1c0769bcd4f7c8193e3'/>
<id>632a3d7f9ded16faaf58e1c0769bcd4f7c8193e3</id>
<content type='text'>
Use lexical-binding in a few files where it was easy.
Don't require `proof-compat` when it's not used.

* coq/coq-db.el: Use lexical-binding.

* coq/coq-system.el: Use lexical-binding.
(coq--extract-prog-args): Use concatenated-args rather than recomputing it.

* coq/coq.el: Require `span` to silence some warnings.

* generic/pg-user.el: Use lexical-binding.
(complete, add-completion, completion-min-length): Silence warnings.

* generic/pg-xml.el: Use lexical-binding.
(pg-xml-string-of): Prefer mapconcat to reduce+concat.

* generic/proof-depends.el: Use lexical-binding.
(proof-dep-split-deps): Use `push`.

* generic/proof-shell.el: Require `span` to silence some warnings.
(proof-shell-invisible-command): Don't use lexical-let just to build
a wasteful η-redex!

* lib/holes.el: Use lexical-binding.
Remove redundant :group args.

* lib/span.el: Use lexical-binding.
(span-read-only-hook): Use user-error.
(span-raise): Remove, unused.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use lexical-binding in a few files where it was easy.
Don't require `proof-compat` when it's not used.

* coq/coq-db.el: Use lexical-binding.

* coq/coq-system.el: Use lexical-binding.
(coq--extract-prog-args): Use concatenated-args rather than recomputing it.

* coq/coq.el: Require `span` to silence some warnings.

* generic/pg-user.el: Use lexical-binding.
(complete, add-completion, completion-min-length): Silence warnings.

* generic/pg-xml.el: Use lexical-binding.
(pg-xml-string-of): Prefer mapconcat to reduce+concat.

* generic/proof-depends.el: Use lexical-binding.
(proof-dep-split-deps): Use `push`.

* generic/proof-shell.el: Require `span` to silence some warnings.
(proof-shell-invisible-command): Don't use lexical-let just to build
a wasteful η-redex!

* lib/holes.el: Use lexical-binding.
Remove redundant :group args.

* lib/span.el: Use lexical-binding.
(span-read-only-hook): Use user-error.
(span-raise): Remove, unused.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup patch; Moving defvar to toplevel</title>
<updated>2018-12-12T17:28:39+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2018-12-11T23:48:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=a921439a4eb5b0d96182748e779c78e2f6a41a5f'/>
<id>a921439a4eb5b0d96182748e779c78e2f6a41a5f</id>
<content type='text'>
Move `defvar`s used to silence warnings outside of eval-when-compile.
Make sure they don't actually give a value to the var.

* pg-init.el: Simplify.
Use (if t ...) to avoid running `require` at compile-time.
Don't add subdirs to load-path here since this code is never used.
(pg-init--script-full-path, pg-init--pg-root):
Inline their definition into their sole user.

* generic/proof-utils.el (proof-resize-window-tofit):
Inline definitions of window-leftmost-p and window-rightmost-p previously
in proof-compat.el.

* lib/proof-compat.el (proof-running-on-win32): Remove, not used.
(mac-key-mode): Remove, there's no carbon-emacs-package-version in
Emacs≥24.3.
(pg-custom-undeclare-variable): Use dolist.
(save-selected-frame): Remove, save-selected-window also saves&amp;restores
the selected frame at the same time.  Update all users (which already
used save-selected-window around it).
(window-leftmost-p, window-rightmost-p, window-bottom-p)
(find-coding-system): Remove, unused.

* hol-light/hol-light.el (caml-font-lock-keywords): Don't try to defvar
it to a dummy value and...
(hol-light): ...check its existence before using it instead.

* coq/coq.el (coq-may-use-prettify): Simplify initialization.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move `defvar`s used to silence warnings outside of eval-when-compile.
Make sure they don't actually give a value to the var.

* pg-init.el: Simplify.
Use (if t ...) to avoid running `require` at compile-time.
Don't add subdirs to load-path here since this code is never used.
(pg-init--script-full-path, pg-init--pg-root):
Inline their definition into their sole user.

* generic/proof-utils.el (proof-resize-window-tofit):
Inline definitions of window-leftmost-p and window-rightmost-p previously
in proof-compat.el.

* lib/proof-compat.el (proof-running-on-win32): Remove, not used.
(mac-key-mode): Remove, there's no carbon-emacs-package-version in
Emacs≥24.3.
(pg-custom-undeclare-variable): Use dolist.
(save-selected-frame): Remove, save-selected-window also saves&amp;restores
the selected frame at the same time.  Update all users (which already
used save-selected-window around it).
(window-leftmost-p, window-rightmost-p, window-bottom-p)
(find-coding-system): Remove, unused.

* hol-light/hol-light.el (caml-font-lock-keywords): Don't try to defvar
it to a dummy value and...
(hol-light): ...check its existence before using it instead.

* coq/coq.el (coq-may-use-prettify): Simplify initialization.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove compile-time calls to proof-ready-for-assistant</title>
<updated>2017-03-08T20:06:17+00:00</updated>
<author>
<name>Clément Pit--Claudel</name>
</author>
<published>2017-02-26T00:35:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=98f2e463287e3562dc7b7126e062919a8604ca4a'/>
<id>98f2e463287e3562dc7b7126e062919a8604ca4a</id>
<content type='text'>
Compilation used to run in a separate Emacs process for each file, but that's not
what happens when installing PG with package.el.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Compilation used to run in a separate Emacs process for each file, but that's not
what happens when installing PG with package.el.
</pre>
</div>
</content>
</entry>
<entry>
<title>Summary: Don't quote lambda expressions</title>
<updated>2012-08-30T14:30:23+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2012-08-30T14:30:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=0d0af3dcce3a9b29d9c33c4cee34ca5249713904'/>
<id>0d0af3dcce3a9b29d9c33c4cee34ca5249713904</id>
<content type='text'>
* coq/coq-indent.el (coq-indent-inner-regexp): Remove old X-Symbol element.
(coq-save-count, coq-proof-count):
* obsolete/plastic/plastic.el (plastic-shell-handle-output):
* lib/texi-docstring-magic.el (texi-docstring-magic-insert-magic):
* lib/pg-dev.el (emacs-lisp-mode-hook):
* lib/maths-menu.el (maths-menu-filter-predicate)
(maths-menu-tokenise-insert):
* lib/holes.el (holes-next):
* lego/lego.el (lego-shell-handle-output):
* isar/isabelle-system.el (isabelle-docs-menu):
* coq/coq.el (coq-compile-command, coq-compile-auto-save)
(coq-compile-ignored-directories, coq-load-path-safep)
(proof-shell-handle-delayed-output-hook): Don't quote lambda.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* coq/coq-indent.el (coq-indent-inner-regexp): Remove old X-Symbol element.
(coq-save-count, coq-proof-count):
* obsolete/plastic/plastic.el (plastic-shell-handle-output):
* lib/texi-docstring-magic.el (texi-docstring-magic-insert-magic):
* lib/pg-dev.el (emacs-lisp-mode-hook):
* lib/maths-menu.el (maths-menu-filter-predicate)
(maths-menu-tokenise-insert):
* lib/holes.el (holes-next):
* lego/lego.el (lego-shell-handle-output):
* isar/isabelle-system.el (isabelle-docs-menu):
* coq/coq.el (coq-compile-command, coq-compile-auto-save)
(coq-compile-ignored-directories, coq-load-path-safep)
(proof-shell-handle-delayed-output-hook): Don't quote lambda.
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace proof-terminal-char with proof-terminal-string.</title>
<updated>2010-08-27T16:32:16+00:00</updated>
<author>
<name>David Aspinall</name>
</author>
<published>2010-08-27T16:32:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=e1a327e5621d191fe408d12b331d05dda17b395c'/>
<id>e1a327e5621d191fe408d12b331d05dda17b395c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Moved</title>
<updated>2010-08-25T15:14:25+00:00</updated>
<author>
<name>David Aspinall</name>
</author>
<published>2010-08-25T15:14:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=366ff018d7ad21abb2148c79d7a3baa03d4f2961'/>
<id>366ff018d7ad21abb2148c79d7a3baa03d4f2961</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Renamed file obsolete/plastic/plastic.el, formerly plastic/plastic.el</title>
<updated>2010-08-25T15:09:40+00:00</updated>
<author>
<name>David Aspinall</name>
</author>
<published>2010-08-25T15:09:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=0adcff5916c38e946e1db3a09b380439b74e4563'/>
<id>0adcff5916c38e946e1db3a09b380439b74e4563</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Renamed file obsolete/plastic/README, formerly plastic/README</title>
<updated>2010-08-25T15:09:37+00:00</updated>
<author>
<name>David Aspinall</name>
</author>
<published>2010-08-25T15:09:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=7d5cf81c5a9165e815d6d84c450d72ab1ba8f3d9'/>
<id>7d5cf81c5a9165e815d6d84c450d72ab1ba8f3d9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Renamed file obsolete/plastic/plastic-syntax.el, formerly plastic/plastic-syntax.el</title>
<updated>2010-08-25T15:09:34+00:00</updated>
<author>
<name>David Aspinall</name>
</author>
<published>2010-08-25T15:09:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/proof-general/commit/?id=d354c17e240a5adde788e326e0a67363fee5b1e7'/>
<id>d354c17e240a5adde788e326e0a67363fee5b1e7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
