aboutsummaryrefslogtreecommitdiff
path: root/org-drill.el
diff options
context:
space:
mode:
authorPhillip Lord <phillip.lord@russet.org.uk>2019-06-13 20:35:51 +0100
committerPhillip Lord <phillip.lord@russet.org.uk>2019-06-13 20:35:51 +0100
commit644b0a5cbce87c7d159d5c6bcee537bce9a40567 (patch)
tree9ae907f9fe23483b5dc2e815bfa6cbc6cb45749a /org-drill.el
parentba0a346583231c5450759a0cf86fe2c896762352 (diff)
downloadorg-drill-644b0a5cbce87c7d159d5c6bcee537bce9a40567.tar.gz
org-drill-644b0a5cbce87c7d159d5c6bcee537bce9a40567.zip
Remove org-learn as a separate package
Diffstat (limited to 'org-drill.el')
-rw-r--r--org-drill.el22
1 files changed, 21 insertions, 1 deletions
diff --git a/org-drill.el b/org-drill.el
index 2132de4..69a109d 100644
--- a/org-drill.el
+++ b/org-drill.el
@@ -55,9 +55,12 @@
(require 'hi-lock)
(require 'org)
(require 'org-id)
-(require 'org-learn)
(require 'savehist)
+(eval-when-compile
+ (require 'cl))
+
+
(require 'seq)
(defgroup org-drill nil
@@ -1131,7 +1134,24 @@ Returns a list: (INTERVAL REPEATS EF FAILURES MEAN TOTAL-REPEATS OFMATRIX), wher
;;; SM5 Algorithm =============================================================
+(defun modify-e-factor (ef quality)
+ (if (< ef 1.3)
+ 1.3
+ (+ ef (- 0.1 (* (- 5 quality) (+ 0.08 (* (- 5 quality) 0.02)))))))
+(defun modify-of (of q fraction)
+ (let ((temp (* of (+ 0.72 (* q 0.07)))))
+ (+ (* (- 1 fraction) of) (* fraction temp))))
+
+(defun set-optimal-factor (n ef of-matrix of)
+ (let ((factors (assoc n of-matrix)))
+ (if factors
+ (let ((ef-of (assoc ef (cdr factors))))
+ (if ef-of
+ (setcdr ef-of of)
+ (push (cons ef of) (cdr factors))))
+ (push (cons n (list (cons ef of))) of-matrix)))
+ of-matrix)
(defun initial-optimal-factor-sm5 (n ef)
(if (= 1 n)