Libraryless. Click here for Pure Java version (954L/7K/22K).
!752 answer { S rest = amIAddressed(s); if (getUserName() == null /* web */ || rest != null) miniChat("attn/" + (rest == null ? s : rest)); else miniChat(""); // indicate we have nothing to say } static L<S> prefs = litlist("hi", "hey", "hello", "yo", "uhm", "oh", "dear", "dearest"); static L<S> names = litlist("eleu", "eleutheria", "computer", "bot"); // returns rest of input (without the greeting) static S amIAddressed(S s) { new Matches m; for (S p : prefs) if (matchStart(p, s, m)) s = m.rest(); for (S name : names) if (matchStart(name, s, m)) ret dropPunctuationFromStart(m.rest()); ret null; } static S dropPunctuationFromStart(S s) { s = s.trim(); while (!empty(s) && ",:!-.".indexOf(s.charAt(0)) >= 0) s = s.substring(1); ret s.trim(); }
download show line numbers debug dex old transpilations
Travelled to 13 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment