P4 (programming language): Difference between revisions

Content deleted Content added
Varkora (talk | contribs)
m Added links and fixed capitalisation.
m clean up, fix grammar/shorter, WP:OPED using AWB
Line 14:
}}
 
'''P4''' is a [[programming language]] designed to allow programming of [[Network packet|packet]] [[Forwardingforwarding plane|forwarding planes]]s. In contrast to a general purpose language such as [[C (programming language)|C]] or [[Python (programming language)|Python]], P4 is a [[___domain-specific language]] with a number of constructs optimized around [[Packet forwarding|network data forwarding]]. P4 is an [[open source|open-source]], [[Permissive free software licence|permissively licensed]] language and is maintained by a non-profit organization called the P4 Language Consortium. The language was originally described in a SIGCOMM CCR paper in 2014 titled “Programming Protocol-Independent Packet Processors”<ref>{{cite web|url=http://www.sigcomm.org/node/3503|title=P4: Programming Protocol-Independent Packet Processors|date=July 2014|accessdate=7 April 2015}}</ref> – the alliterative name shortens to “P4”.
 
== Language overview and design considerations ==
 
As the language is specifically targeted at packet forwarding applications, the list of requirements or design choices is somewhat uniqueunusual to those use cases. The language is designed to meet a number of these goals:
 
===Target independence===