<commit_before>;;;;; tré - Copyright (c) 2008-2012 <NAME> <<EMAIL>>

(defun compile-0 (sources &key (target nil) (obfuscate? nil) (print-obfuscations? nil) (files-to-update nil))
  (?
    (not target) (error "target missing")
    (eq 'c target) ,(when *have-c-compiler?* '(c-transpile sources :obfuscate? obfuscate?))
    (eq 'js target) (js-transpile sources :obfuscate? obfuscate? :print-obfuscations? :print-obfuscations? :files-to-update files-to-update)
    (eq 'php target) (php-transpile sources :obfuscate? obfuscate? :print-obfuscations? :print-obfuscations? :files-to-update files-to-update)
    (error "unknown target ~A")))

(defun compile-files (files &key (target nil) (obfuscate? nil) (print-obfuscations? nil) (files-to-update nil))
  (compile-0 (mapcar #'list files)
             :target target :obfuscate? obfuscate? :print-obfuscations? print-obfuscations? :files-to-update files-to-update))

(defun compile (expression &key (target nil) (obfuscate? nil) (print-obfuscations? nil) (files-to-update nil) (section-id 'compile))
  (compile-0 (list (cons section-id (list expression)))
             :target target :obfuscate? obfuscate? :print-obfuscations? print-obfuscations? :files-to-update files-to-update))<commit_msg>COMPILE: Don't compile expression if NIL -- used to compile just the base lib.<commit_after>;;;;; tré - Copyright (c) 2008-2012 <NAME> <<EMAIL>>

(defun compile-0 (sources &key (target nil) (obfuscate? nil) (print-obfuscations? nil) (files-to-update nil))
  (?
    (not target) (error "target missing")
    (eq 'c target) ,(when *have-c-compiler?* '(c-transpile sources :obfuscate? obfuscate?))
    (eq 'js target) (js-transpile sources :obfuscate? obfuscate? :print-obfuscations? :print-obfuscations? :files-to-update files-to-update)
    (eq 'php target) (php-transpile sources :obfuscate? obfuscate? :print-obfuscations? :print-obfuscations? :files-to-update files-to-update)
    (error "unknown target ~A")))

(defun compile-files (files &key (target nil) (obfuscate? nil) (print-obfuscations? nil) (files-to-update nil))
  (compile-0 (mapcar #'list files)
             :target target :obfuscate? obfuscate? :print-obfuscations? print-obfuscations? :files-to-update files-to-update))

(defun compile (expression &key (target nil) (obfuscate? nil) (print-obfuscations? nil) (files-to-update nil) (section-id 'compile))
  (compile-0 (and expression (list (cons section-id (list expression))))
             :target target :obfuscate? obfuscate? :print-obfuscations? print-obfuscations? :files-to-update files-to-update))
{'fraction_non_alphanumeric': 0.155078125, 'fraction_numerical': 0.00859375, 'mean_word_length': 4.755056179775281, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '229817', 'n_tokens_mistral': 934, 'n_tokens_neox': 911, 'n_words': 235}