工具箱语言

  • Toolbox Languages: Python and shell scripts are default. Other less-known ones include AutoHotKey, J, Frink, Raku, and Picat.

    • AutoHotKey: For Windows, good for GUI scripting. Can configure shortcuts, access win32 functionality, and has a great GUI framework. Examples include mapping middle-mouse to a shortcut in Audacity and creating timestamped notes.
    • J: An array language good at arithmetic on arrays but frustrating with strings. Useful features include terseness, first-class multidimensional arrays, and many top-level primitives. Examples involve prime factor decomposition and process interleaving.
    • Frink: Designed for dimensional analysis with built-in units, date literals, and an interval type. Useful for various calculations like time and distance.
    • Raku: A powerful language with custom operators, syntactic sugar, a MAIN function with CLI arguments, multimethods, and unicode math operators. Examples include generating random strings and copying SVG ids.
    • Picat: A mix of logic programming, constraint solving, and imperative features. Useful for various problems like vacation planning and logic puzzle solving.
  • What Makes a Good Toolbox Language: Should be fast to write (faster than Python), have a terse syntax, many builtins, a good REPL, and a smooth on-ramp. Raku's Rakudo Star Bundle is a plus.
  • Other Tools Wanted: jq for json processing, Javascript for modifying websites, an APL without J's frustrations, a concatenative PL for unknown small problems, and something for easy webscraping and parsing.
  • Thanks and Promotions: Thanks to Saul Pwanson. Encourage to join the newsletter. Mention training in formal methods and the new book "Logic for Programmers" in early access.
阅读 13
0 条评论