<commit_before>module Lasp
  CORELIB = {
    :+          => -> (*args)         { args.reduce(:+)                 },
    :-          => -> (*args)         { args.reduce(:-)                 },
    :*          => -> (*args)         { args.reduce(:*)                 },
    :/          => -> (*args)         { args.reduce(:/)                 },
    :<          => -> (*args)         { args.sort == args               },
    :>          => -> (*args)         { args.sort.reverse == args       },
    :"="        => -> (*args)         { args.uniq.count == 1            },
    :list       => -> (*args)         { args                            },
    :head       => -> (list)          { list.first                      },
    :tail       => -> (list)          { list.drop(1)                    },
    :cons       => -> (item, list)    { [item] + list                   },
    :"hash-map" => -> (*args)         { Hash[*args]                     },
    :get        => -> (key, a)        { a[key]                          },
    :assoc      => -> (a, key, val)   { a.dup.tap { |a| a[key]=val    } },
    :dissoc     => -> (a, key)        { a.dup.tap { |a| a.delete(key) } },
    :not        => -> (arg)           { !arg                            },
    :println    => -> (output)        { puts output                     },
    :"."        => -> (obj, m, *args) { obj.send(m, *args)              },
  }
end<commit_msg>Tweak style<commit_after>module Lasp
  CORELIB = {
    :+          => -> (*args)         { args.reduce(:+)                 },
    :-          => -> (*args)         { args.reduce(:-)                 },
    :*          => -> (*args)         { args.reduce(:*)                 },
    :/          => -> (*args)         { args.reduce(:/)                 },
    :<          => -> (*args)         { args.sort == args               },
    :>          => -> (*args)         { args.sort.reverse == args       },
    :"="        => -> (*args)         { args.uniq.count == 1            },
    :list       => -> (*args)         { args                            },
    :head       => -> (list)          { list.first                      },
    :tail       => -> (list)          { list.drop(1)                    },
    :cons       => -> (item, list)    { [item] + list                   },
    :"hash-map" => -> (*args)         { Hash[*args]                     },
    :get        => -> (key, a)        { a[key]                          },
    :assoc      => -> (a, key, val)   { a.dup.tap { |a| a[key] = val  } },
    :dissoc     => -> (a, key)        { a.dup.tap { |a| a.delete(key) } },
    :not        => -> (arg)           { !arg                            },
    :println    => -> (output)        { puts output                     },
    :"."        => -> (obj, m, *args) { obj.send(m, *args)              },
  }
end
{'fraction_non_alphanumeric': 0.20227111426543648, 'fraction_numerical': 0.0014194464158978, 'mean_word_length': 0.7465923172242875, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 77, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2534423', 'n_tokens_mistral': 836, 'n_tokens_neox': 801, 'n_words': 135}