Obviously C code running in a kernel is "more complex" than a Python script.
I was talking about how users would actually use this p0f BPF tool. Compare this:
./bpfgen p0f -- 4:64:0:*:mss*10,6:mss,sok,ts,nop,ws:df,id+:0
sudo iptables -A INPUT -p tcp --dport 80 -m bpf --bytecode "39,0 0 0 0,48 0 0 8,37 [...]"
with how you would actually use the "complex" C code in pf: block in proto tcp from any os Windows