</ref> Frenetic is designed to solve major [[OpenFlow]]/[[Nox (platform)|NOX]] programming problems. In particular, Frenetic introduces a set of purely [[Principle of abstraction|functional abstractions]] that enable [[Modular programming|modular program development]], defines [[high-level]], programmer-centric packet-processing operators, and eliminates many of the difficulties of the two-tier programming model by introducing a see-every-[[Network packet|packet]] programming paradigm. Hence Frenetic is a [[functional reactive programming]] language operating at a packet level of abstraction.<ref name=voellmy>{{cite journal|last=Voellmy|first=Andreas|author2=Hudak, Paul|title=Nettle: Taking the Sting Out of Programming Network Routers|journal=Practical Aspects of Declarative Languages|volume=6359/2011|pages=235–249|doi=10.1007/978-3-642-18378-2_19|year=2011|series=Lecture Notes in Computer Science|isbn=978-3-642-18377-5}}</ref>