Frenetic (programming language): Difference between revisions

Content deleted Content added
Reverted to revision 413967090 by WikHead; page blanked with no reason given. (TW)
Bender the Bot (talk | contribs)
 
(45 intermediate revisions by 32 users not shown)
Line 1:
{{Infobox programming language
<!-- Please do not remove or change this AfD message until the issue is settled -->
| name = Frenetic
{{Article for deletion/dated|page=Frenetic (programming language)|timestamp=20110214194820|year=2011|month=February|day=14|substed=yes|help=off}}
| logo =
<!-- For administrator use only: {{Old AfD multi|page=Frenetic (programming language)|date=14 February 2011|result='''keep'''}} -->
| caption =
<!-- End of AfD message, feel free to edit beyond this point -->
| file ext =
'''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>
| paradigm = [[___domain-specific language|Domain-specific]] ([[software-defined networking]]), [[reactive programming|reactive]], [[Modular programming|modular]]
| released = <!-- {{Start date|YYYY}} -->
| designer =
| developer =
| latest release version =
| latest release date = <!-- {{start date and age|YYYY|MM|DD}} -->
| latest preview version =
| latest preview date = <!-- {{start date and age|YYYY|MM|DD}} -->
| typing = Dynamic
| implementations =
| dialects =
| influenced by = [[OCaml]]
| influenced =
| platform =
| operating system =
| license =
| 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>
{{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==
{{Reflist}}
 
==Further reading==
*{{cite conference|date=November 30, 2010|title=Frenetic: A High-Level Language for OpenFlow Networks|conference=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/}}
* [http://conferences.sigcomm.org/co-next/2010/Workshops/PRESTO/PRESTO_papers/04-Foster.pdf Frenetic: A High-Level Language for OpenFlow Networks]
 
[[Category:Functional programming]]