• 4 Posts
  • 6 Comments
Joined 2 years ago
cake
Cake day: July 31st, 2023

help-circle
  • fair enough, however the intention is to show how one could create rules on Sparrow/Raku, not to show rules … Maybe I should have mentioned that …

    for example this is more interesting example evaluation of net.ipv4.tcp_synack_retries"

    regexp: ^^ "net.ipv4.tcp_synack_retries" \s* "=" \s* (\d+) \s* $$
    
    generator: <<RAKU
    !raku
    if matched().elems {
      my $v = capture()[];
      say "note: net.ipv4.tcp_synack_retries={$v}";
      if $v >= 3 && $v <= 5 {
         say "assert: 1 net.ipv4.tcp_synack_retries in [3..5] range"
      } else {
         say "assert: 0 net.ipv4.tcp_synack_retries in [3..5] range"
      }
    } else {
      say "note: net.ipv4.tcp_synack_retries setting not found"
    }
    RAKU
    








  • We are not taking about use of Bash in dev vs use Bash in production. This is imho incorrect question that skirts around the real problem in software development. We talk about use of Bash for simple enough tasks where code is rarely changed ( if not written once and thrown away ) and where every primitive language or DSL is ok, where when it comes to building of medium or complex size software systems where decomposition, complex data structures support, unit tests, error handling, concurrency, etc is a big of a deal - Bash really sucks because it does not allow one to deal with scaling challenges, by scaling I mean where you need rapidly change huge code base according changes of requirements and still maintain good quality of entire code. Bash is just not designed for that.