Frenetic (programming language): Difference between revisions

Content deleted Content added
No edit summary
Bender the Bot (talk | contribs)
 
(40 intermediate revisions by 31 users not shown)
Line 1:
<!-- Please do not remove or change this AfD message until the issue is settled -->
{{Article for deletion/dated|page=Frenetic (programming language)|timestamp=20110214194820|year=2011|month=February|day=14|substed=yes|help=off}}
<!-- For administrator use only: {{Old AfD multi|page=Frenetic (programming language)|date=14 February 2011|result='''keep'''}} -->
<!-- End of AfD message, feel free to edit beyond this point -->
{{Infobox programming language
| name = Frenetic
Line 8 ⟶ 4:
| caption =
| file ext =
| paradigm = [[___domain-specific language|Domain-specific]] ([[Openflowsoftware-defined Switching Protocol|OpenFlownetworking]] networking), [[functional reactive programming|functional reactive]], [[Modular programming|modular]]
| released = <!-- {{Start date|YYYY}} -->
| designer =
Line 19 ⟶ 15:
| implementations =
| dialects =
| influenced by = [[Python (programming language)|PythonOCaml]]
| influenced = Nothing
| platform =
| operating system =
Line 26 ⟶ 22:
| website = {{URL|http://www.frenetic-lang.org}}
}}
'''Frenetic''' is a [[___domain-specific language]] for programming [[software-defined networking]] (SDN). This ___domain-specific programming language allows network operators, rather than manually configuring each connected network device, to program the network as a whole.<ref>
'''Frenetic''' is a ___domain-specific language for programming [[Openflow Switching Protocol|OpenFlow]] networks, embedded in [[Python (programming language)|Python]]. The language is designed to solve major OpenFlow/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|coauthors=Hudak, Paul|title=Nettle: Taking the Sting Out of Programming Network Routers|journal=Practical Aspects of Declarative languages|year=2011|volume=6359/2011|pages=235-249|doi=10.1007/978-3-642-18378-2_19|url=http://www.springerlink.com/content/t487m08h1p60837v/fulltext.pdf|date=2011|accessdate=14 February 2011}}</ref>
{{cite web
| url = http://www.cs.yale.edu/publications/techreports/tr1432.pdf
| author = Voellmy, Andreas
| title = Don't Configure the Network, Program It
| date = July 10, 2010
| publisher = cs.yale.edu
| accessdate = February 22, 2011
|display-authors=etal}}
'''</ref> Frenetic''' is adesigned ___domain-specificto languagesolve for programmingmajor [[Openflow Switching Protocol|OpenFlow]] networks, embedded in /[[PythonNox (programming languageplatform)|PythonNOX]]. The language is designed to solve major OpenFlow/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 journalbook|last=Voellmy|first=Andreas|coauthorsauthor2=Hudak, Paul|titlechapter=Nettle: Taking the Sting Out of Programming Network Routers|journaltitle=Practical Aspects of Declarative languages|year=2011Languages|volume=6359/2011|pages=235-249235–249|doi=10.1007/978-3-642-18378-2_19|url=http://www.springerlink.com/content/t487m08h1p60837v/fulltext.pdf|dateyear=2011|accessdateseries=14Lecture FebruaryNotes 2011in Computer Science|isbn=978-3-642-18377-5}}</ref>
 
==References==
Line 32 ⟶ 37:
 
==Further reading==
*{{cite journalconference|date=November 30, 2010|title=Frenetic: A High-Level Language for OpenFlow Networks|journalconference=ACM PRESTO 2010|publisher=[[Association for Computing Machinery|ACM]]|url=http://conferences.sigcomm.org/co-next/2010/Workshops/PRESTO/PRESTO_papers/04-Foster.pdf |first1=Nate |last1=Foster |first2=Rob |last2=Harrison |first3=Matthew L. |last3=Meola |first4=Michael J. |last4=Freedman |first5=Jennifer |last5=Rexford|author5-link=Jennifer Rexford |first6=David |last6=Walker |isbn=978-1-4503-0467-2}}
*Nate Foster, Rob Harrison, Michael J. Freedman, [[Jennifer Rexford]], and David Walker (December 6, 2010). [https://ecommons.library.cornell.edu/bitstream/1813/19310/4/frenetic-tr.pdf Frenetic: A High-Level Language for OpenFlow Networks, Technical report]. Cornell University. Retrieved February 22, 2011.
 
== External links ==
* {{official website|http://www.frenetic-lang.org}}
 
[[Category:Functional programming]]