Nota Caesaris

Quasus

Civis Illustris

  • Civis Illustris

Zbqbori, pf Zxbpxobi fifqxkqbp hfqqboxp j bq v brfqxirp, klkkb bxbabi bszfmfbkaxb prkq ab oxqflkb klqxori?
 

Glabrigausapes

Viper

  • Civis Illustris

Nrfa dbkqfrj ilnrfjfkbf?!
 

Lysandra

Canis

  • Civis Illustris

  • Patrona

Zbqbori, pf Zxbpxobi fifqxkqbp hfqqboxp j bq v brfqxirp, klkkb bxbabi bszfmfbkaxb prkq ab oxqflkb klqxori?
Qfjbl rq ljkfx nrxb pzofmpfpqf klk zxmfxj. :( Cloqxppb zljmolyxob mlqbp?
 

Quasus

Civis Illustris

  • Civis Illustris

> Qfjbl rq ljkfx nrxb pzofmpfpqf klk zxmfxj.

Cum scribis latine, litteras j et v evitas, sed en in notis j apparet. Quonam alphabeto utendum est nobis, vetere an recentiore, v et j et w additis?
 

Dantius

Homo Sapiens

  • Civis Illustris

Caesar certe cum per notas scribebat, litteris quae sunt "j" "w" "v" non utebatur. Ego ergo opinor, si Latine per Caesaris notam scribamus, solis Latinis litteris nobis scribendum esse. Sed non magni refert quid ego sentiam; non enim in hoc filo scribo nec scribere volo.
 

Quasus

Civis Illustris

  • Civis Illustris

Fortasse quia deest tibi, o Danti, programma convertor. Si Lispo Communi uteris, ecce meum:
Code:
;;;; LICENTIA: FAC QVOD VIS
 
(defpackage #:caesar
  (:use #:cl)
  (:export #:encode
          #:encode-with-casing
          #:latin23
          #:latin26))
 
(in-package #:caesar)
 
(defun try-encode-char (char key shift)
  (let ((p (position char key)))
    (and p (char key (mod (+ p shift) (length key))))))
 
(defun encode (string shift key)
  (unless (listp key)
    (setf key (list key)))
  (with-output-to-string (s)
    (loop for char across string
          for encoded-char = (loop for k in key
                                   for e = (try-encode-char char k shift)
                                   when e
                                   do (return e)
                                   finally (return nil))
          do (write-char (or encoded-char char) s))))
 
(defun encode-with-casing (string shift minuscules)
  (encode string shift (list minuscules (string-upcase minuscules))))
 
(defun latin23 (string shift)
  (encode string shift '("abcdefghiklmnopqrstuxyz" "ABCDEFGHIKLMNOPQRSTVXYZ")))
 
(defun latin26 (string shift)
  (encode-with-casing string shift "abcdefghijklmnopqrstuvwxyz"))
Exempla:
Code:
CAESAR> (latin23 "Salue!" -3)
"Pxhrb!"
CAESAR> (latin23 "SALVE" -3)
"PXHRB"
 

Issacus Divus

H₃rḗǵs h₁n̥dʰéri diwsú

  • Civis Illustris

Zro klk?
 
Top