title: José Callejón

text: A product of Real Madrid youth ranks, Callejón was born in Motril, Granada, Andalusia. He made his professional debut for the reserves in May 2007, and played five games in that season's Segunda División without scoring a goal.


title: José Callejón

text: In the 2007–08 campaign, Callejón appeared in 37 matches and netted 21 times, finishing as team top scorer but in the Segunda División B.


title: José Callejón

text: At the end of the season, Callejón left Real Madrid (with twin brother Juanmi) and signed a four-year contract with RCD Espanyol. He made his La Liga debut on 20 September 2008, as a late substitute in a 1–1 home draw against Getafe CF.


title: José Callejón

text: On 15 March 2009, as Espanyol struggled immensely in the league – eventually ranking in tenth position – Callejón scored his first goal for the Catalans in a 3–3 home draw to RCD Mallorca. He continued to be an undisputed starter under Mauricio Pochettino the following campaigns, operating mainly as a winger.


title: José Callejón

text: On 15 January 2011, Callejón scored twice to help to a 2–1 away defeat of Sevilla FC. He only missed one league game and netted six times for the "Pericos", who finished comfortably in mid-table.


title: José Callejón

text: On 23 May 2011, Callejón re-joined Real Madrid on a five-year deal effective as of 1 July, for a reported fee of €5.5 million. On 16 July, he played his first match for them in a 4–1 friendly victory over the Los Angeles Galaxy, scoring the first goal of the game in the 30th minute.


title: José Callejón

text: On 2 October 2011, Callejón netted his first official goal for Real Madrid after coming on midway through the second half of an away fixture against former club Espanyol; he scored from a Cristiano Ronaldo assist in an eventual 4–0 win but did not celebrate the goal, instead raising his arms in the air in a mark of respect for his former employer.


title: José Callejón

text: Profiting from the fact that his team had already qualified from the UEFA Champions League group stage as leaders, Callejón was handed a rare start by manager José Mourinho on 22 November 2011, and responded by scoring a brace in a 6–2 home rout of NK Dinamo Zagreb. He added another two in the last round, at AFC Ajax (3–0).


title: José Callejón

text: As a starter, Callejón continued with his impressive scoring form: he scored once in a 6–2 away win over Sevilla on 17 December 2011, and in the tie against SD Ponferradina for the season's Copa del Rey he netted three of his team's seven aggregate goals, one away and two at home.


title: José Callejón

text: On 14 January 2012, Callejón scored the winner in a 2–1 defeat of Mallorca, helping the visitors come from behind with his 84th-minute long-range strike. He added another the following matchday, closing the score in a 4–1 home victory against Athletic Bilbao.


title: José Callejón

text: On 9 July 2013, Italian club S.S.C. Napoli announced that they had reached an agreement for the transfer of Callejón for €10 million. The four-year deal was confirmed two days later.


title: José Callejón

text: Callejón scored in his Serie A debut on 25 August, netting the opener in a 3–0 home win over Bologna F.C. 1909, and went on to find the net a further seven times in his first 20 official appearances. On 22 October, he scored his first goal in Europe for his new team, grabbing his team's first in a 2–1 victory at Olympique de Marseille in the Champions League group stage.


title: José Callejón

text: On 3 May 2014, Callejón set up Dries Mertens for the third goal in a 3–1 win against ACF Fiorentina in the final of the Coppa Italia. He scored once in the final game of the season, a 5–1 home rout of Hellas Verona F.C. on 18 May; his strike after five minutes was Napoli's 100th goal in all competitions that season, and his 20th overall.


title: José Callejón

text: Callejón netted his first goal of 2014–15 on the opening day of the campaign, the opener in a 2–1 win over Genoa CFC. His second came on 24 September, as he scored at the stroke of half-time to put his side up 3–2 against U.S. Città di Palermo in an eventual 3–3 home draw. On 19 October, he scored twice in a 2–2 draw at Inter Milan, with all four of the game's goals coming in the last 11 minutes.


title: José Callejón

text: In the Derby del Sole match against A.S. Roma on 2 November 2014, Callejón hit the post and had a shot saved off the line before eventually finding the net late on in the 2–0 victory. The strike took his league goal tally to eight on the season, two more than his closest competitors, and he was included in the Serie A Team of the Week lineup.


title: José Callejón

text: On 17 September 2015, Callejón scored twice in Napoli's first game of the UEFA Europa League group stage, a 5–0 home rout of Club Brugge KV. For the same competition, away to FC Midtjylland on 22 October, he volleyed a long pass from Kalidou Koulibaly to open a 4–1 victory; UEFA dubbed the latter effort an "early contender for goal of the group stage".


title: José Callejón

text: Callejón marked his 200th appearance for the "Azzurri" with his 57th goal on 9 April 2017, in a 3–0 league win against S.S. Lazio. His 300th came on 28 April 2019, in the 2–0 away victory over Frosinone Calcio.


title: José Callejón

text: On 5 October 2020, Callejón agreed to a deal with Fiorentina. He scored twice in competitive matches during his spell, once in the league against U.C. Sampdoria (3–1 home win) and once in the domestic cup to help beat Calcio Padova 2–1 also at home.


title: José Callejón

text: Callejón returned to Spain on 25 July 2022 after nine years away, signing a one-year contract with Granada CF with the option of an extension based on sporting performance.


title: José Callejón

text: Callejón made his debut for the Spain under-21 team on 25 March 2008 against Kazakhstan in a 2009 UEFA European Under-21 Championship qualifier; he entered the field in the 46th minute after replacing Bojan Krkić, and scored shortly after in a 5–0 win.


title: José Callejón

text: On 7 November 2014, Callejón was called up to the full side for the first time, being picked by Vicente del Bosque for matches against Belarus and Germany. He made his debut on the 15th against the former, coming on for Santi Cazorla in the 69th minute of the 3–0 triumph in Huelva for the UEFA Euro 2016 qualifying phase.


title: José Callejón

text: A versatile, tenacious and hard-working right-footed player, Callejón was capable of playing anywhere along the front line, and was used as a forward or a winger on either flank, in the centre as an attacking midfielder and as a supporting striker. Although he usually occupied a position in or behind the main attacking line, due to his personality and ability to provide balance to his teams by linking-up play between the forwards and midfielders, he was also capable of playing in the centre as a main striker, and was also occasionally deployed in deeper roles under Mourinho during his time at Real Madrid, as a central midfielder or even as an attacking full-back or wingback.


title: José Callejón

text: A quick, mobile and creative player, with good technical ability, Callejón was capable of both creating and scoring goals due to his powerful shot and excellent offensive movement off the ball, as demonstrated by his ability to lose his markers by make attacking runs in behind the defensive line and into the area from deeper or wider areas. He was also a good header of the ball, in spite of his average stature.


title: Ami James

text: Ami James (; born 6 April 1972) is an Israeli-American tattoo artist, television personality and entrepreneur.


title: Ami James

text: James was born in the Egyptian city of Sharm El Sheikh (then occupied by Israel). His American-born father converted to Judaism three years prior to moving to Israel. Once residing in Israel, his father joined the Israeli army and met James' mother, who had emigrated from Romania. James lived in both Israel and Egypt as a child, but when James was four years old, his father left their family.


title: Ami James

text: Struggling with severe ADD, James explained that he was drawn into art and tattooing from a young age, disclosing that his father had tattoos and was a painter.


title: Ami James

text: James moved to the United States around age 11 where he lived with his paternal grandparents before moving to Miami at age 12. At the age of 15, James received his first tattoo, an experience that left him determined to become a tattoo artist, himself. In his adolescence, James moved back to Israel and entered military service in the Israel Defense Forces as an Infantry sniper.


title: Ami James

text: In 1992, he started his apprenticeship with tattoo artist Lou at "Tattoos By Lou". He is the co-owner (with Chris Núñez) of the Miami Beach, Florida tattoo parlor Love Hate Tattoos, the subject of the TLC reality television program, "Miami Ink". James also co-owns the DeVille clothing company with Núñez and Jesse Fleet, and the Miami nightclub Love Hate Lounge, with Núñez and two other close friends. He has also created designs for Motorola's RAZR V3 mobile phones. His wife, Jordan, gave birth to their first child, Shayli Haylen James on 3 August 2008. Their second child, a daughter named Nalia, was born 8 May 2012.


title: Ami James

text: James has also recently invested in a jewelry line, Love Hate Choppers Jewelry, with Boston jeweler Larry Weymouth.


title: Ami James

text: He revealed on his blog that he was moving to New York and that his new show "NY Ink" planned to begin filming in March 2011. The show premiered on 2 June 2011.


title: Ami James

text: It was announced that Ami James was opening a tattoo studio, 'Love Hate Social Club' in London, UK in November 2012. The tattoo studio had a number of guest tattoo artists including, Darren Brass, Megan Massacre and Chris Núñez.


title: Ami James

text: James also co-founded "Tattoodo", an online platform for getting a custom tattoo design, which launched on 9 May 2013.


title: Ami James

text: In 2022, James became a judge on "Ink Master" during its fourteenth season, replacing Nuñez and Oliver Peck.


title: Common Lisp

text: Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document "ANSI INCITS 226-1994 (S20018)" (formerly "X3.226-1994 (R1999)"). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived from the ANSI Common Lisp standard.


title: Common Lisp

text: The Common Lisp language was developed as a standardized and improved successor of Maclisp. By the early 1980s several groups were already at work on diverse successors to MacLisp: Lisp Machine Lisp (aka ZetaLisp), Spice Lisp, NIL and S-1 Lisp. Common Lisp sought to unify, standardise, and extend the features of these MacLisp dialects. Common Lisp is not an implementation, but rather a language specification. Several implementations of the Common Lisp standard are available, including free and open-source software and proprietary products.


title: Common Lisp

text: Common Lisp is a general-purpose, multi-paradigm programming language. It supports a combination of procedural, functional, and object-oriented programming paradigms. As a dynamic programming language, it facilitates evolutionary and incremental software development, with iterative compilation into efficient run-time programs. This incremental development is often done interactively without interrupting the running application.


title: Common Lisp

text: It also supports optional type annotation and casting, which can be added as necessary at the later profiling and optimization stages, to permit the compiler to generate more efficient code. For instance, codice_1 can hold an unboxed integer in a range supported by the hardware and implementation, permitting more efficient arithmetic than on big integers or arbitrary precision types. Similarly, the compiler can be told on a per-module or per-function basis which type of safety level is wanted, using "optimize" declarations.


title: Common Lisp

text: Common Lisp includes CLOS, an object system that supports multimethods and method combinations. It is often implemented with a Metaobject Protocol.


title: Common Lisp

text: Common Lisp is extensible through standard features such as "Lisp macros" (code transformations) and "reader macros" (input parsers for characters).


title: Common Lisp

text: Common Lisp provides partial backwards compatibility with Maclisp and John McCarthy's original Lisp. This allows older Lisp software to be ported to Common Lisp.


title: Common Lisp

text: Work on Common Lisp started in 1981 after an initiative by ARPA manager Bob Engelmore to develop a single community standard Lisp dialect. Much of the initial language design was done via electronic mail. In 1982, Guy L. Steele Jr. gave the first overview of Common Lisp at the 1982 ACM Symposium on LISP and functional programming.


title: Common Lisp

text: The first language documentation was published in 1984 as Common Lisp the Language (known as CLtL1), first edition. A second edition (known as CLtL2), published in 1990, incorporated many changes to the language, made during the ANSI Common Lisp standardization process: extended LOOP syntax, the Common Lisp Object System, the Condition System for error handling, an interface to the pretty printer and much more. But CLtL2 does not describe the final ANSI Common Lisp standard and thus is not a documentation of ANSI Common Lisp. The final ANSI Common Lisp standard then was published in 1994. Since then no update to the standard has been published. Various extensions and improvements to Common Lisp (examples are Unicode, Concurrency, CLOS-based IO) have been provided by implementations and libraries.


title: Common Lisp

text: Common Lisp is a dialect of Lisp. It uses S-expressions to denote both code and data structure. Function calls, macro forms and special forms are written as lists, with the name of the operator first, as in these examples:


title: Common Lisp

text: "Number" types include integers, ratios, floating-point numbers, and complex numbers. Common Lisp uses bignums to represent numerical values of arbitrary size and precision. The ratio type represents fractions exactly, a facility not available in many languages. Common Lisp automatically coerces numeric values among these types as appropriate.


title: Common Lisp

text: The Common Lisp "character" type is not limited to ASCII characters. Most modern implementations allow Unicode characters.


title: Common Lisp

text: The "symbol" type is common to Lisp languages, but largely unknown outside them. A symbol is a unique, named data object with several parts: name, value, function, property list, and package. Of these, "value cell" and "function cell" are the most important. Symbols in Lisp are often used similarly to identifiers in other languages: to hold the value of a variable; however there are many other uses. Normally, when a symbol is evaluated, its value is returned. Some symbols evaluate to themselves, for example, all symbols in the keyword package are self-evaluating. Boolean values in Common Lisp are represented by the self-evaluating symbols T and NIL. Common Lisp has namespaces for symbols, called 'packages'.


title: Common Lisp

text: A number of functions are available for rounding scalar numeric values in various ways. The function codice_2 rounds the argument to the nearest integer, with halfway cases rounded to the even integer. The functions codice_3, codice_4, and codice_5 round towards zero, down, or up respectively. All these functions return the discarded fractional part as a secondary value. For example, codice_6 yields −3, 0.5; codice_7 yields −2, −0.5; codice_8 yields 2, 0.5; and codice_9 yields 4, −0.5.


title: Common Lisp

text: "Sequence" types in Common Lisp include lists, vectors, bit-vectors, and strings. There are many operations that can work on any sequence type.


title: Common Lisp

text: As in almost all other Lisp dialects, "lists" in Common Lisp are composed of "conses", sometimes called "cons cells" or "pairs". A cons is a data structure with two slots, called its "car" and "cdr". A list is a linked chain of conses or the empty list. Each cons's car refers to a member of the list (possibly another list). Each cons's cdr refers to the next cons—except for the last cons in a list, whose cdr refers to the codice_10 value. Conses can also easily be used to implement trees and other complex data structures; though it is usually advised to use structure or class instances instead. It is also possible to create circular data structures with conses.


title: Common Lisp

text: Common Lisp supports multidimensional "arrays", and can dynamically resize "adjustable" arrays if required. Multidimensional arrays can be used for matrix mathematics. A "vector" is a one-dimensional array. Arrays can carry any type as members (even mixed types in the same array) or can be specialized to contain a specific type of members, as in a vector of bits. Usually, only a few types are supported. Many implementations can optimize array functions when the array used is type-specialized. Two type-specialized array types are standard: a "string" is a vector of characters, while a "bit-vector" is a vector of bits.


title: Common Lisp

text: "Hash tables" store associations between data objects. Any object may be used as key or value. Hash tables are automatically resized as needed.


title: Common Lisp

text: "Packages" are collections of symbols, used chiefly to separate the parts of a program into namespaces. A package may "export" some symbols, marking them as part of a public interface. Packages can use other packages.


title: Common Lisp

text: "Structures", similar in use to C structs and Pascal records, represent arbitrary complex data structures with any number and type of fields (called "slots"). Structures allow single-inheritance.


title: Common Lisp

text: "Classes" are similar to structures, but offer more dynamic features and multiple-inheritance. (See CLOS). Classes have been added late to Common Lisp and there is some conceptual overlap with structures. Objects created of classes are called "Instances". A special case is Generic Functions. Generic Functions are both functions and instances.


title: Common Lisp

text: Common Lisp supports first-class functions. For instance, it is possible to write functions that take other functions as arguments or return functions as well. This makes it possible to describe very general operations.


title: Common Lisp

text: The Common Lisp library relies heavily on such higher-order functions. For example, the codice_11 function takes a relational operator as an argument and key function as an optional keyword argument. This can be used not only to sort any type of data, but also to sort data structures according to a key.


title: Common Lisp

text: The evaluation model for functions is very simple. When the evaluator encounters a form codice_12 then it presumes that the symbol named f is one of the following:


title: Common Lisp

text: If f is the name of a function, then the arguments a1, a2, ..., an are evaluated in left-to-right order, and the function is found and invoked with those values supplied as parameters.


title: Common Lisp

text: The macro codice_14 defines functions where a function definition gives the name of the function, the names of any arguments, and a function body:


title: Common Lisp

text: Function definitions may include compiler directives, known as "declarations", which provide hints to the compiler about optimization settings or the data types of arguments. They may also include "documentation strings" (docstrings), which the Lisp system may use to provide interactive documentation:


title: Common Lisp

text: Anonymous functions (function literals) are defined using codice_13 expressions, e.g. codice_16 for a function that squares its argument. Lisp programming style frequently uses higher-order functions for which it is useful to provide anonymous functions as arguments.


title: Common Lisp

text: There are several other operators related to the definition and manipulation of functions. For instance, a function may be compiled with the codice_19 operator. (Some Lisp systems run functions using an interpreter by default unless instructed to compile; others compile every function).


title: Common Lisp

text: Methods can specialize their parameters over CLOS "standard classes", "system classes", "structure classes" or individual objects. For many types, there are corresponding "system classes".


title: Common Lisp

text: Generic Functions are also a first class data type. There are many more features to Generic Functions and Methods than described above.


title: Common Lisp

text: The namespace for function names is separate from the namespace for data variables. This is a key difference between Common Lisp and Scheme. For Common Lisp, operators that define names in the function namespace include codice_14, codice_17, codice_18, codice_21 and codice_20.


title: Common Lisp

text: To pass a function by name as an argument to another function, one must use the codice_27 special operator, commonly abbreviated as codice_28. The first codice_11 example above refers to the function named by the symbol codice_30 in the function namespace, with the code codice_31. Conversely, to call a function passed in such a way, one would use the codice_32 operator on the argument.


title: Common Lisp

text: Scheme's evaluation model is simpler: there is only one namespace, and all positions in the form are evaluated (in any order) – not just the arguments. Code written in one dialect is therefore sometimes confusing to programmers more experienced in the other. For instance, many Common Lisp programmers like to use descriptive variable names such as "list" or "string" which could cause problems in Scheme, as they would locally shadow function names.


title: Common Lisp

text: Whether a separate namespace for functions is an advantage is a source of contention in the Lisp community. It is usually referred to as the "Lisp-1 vs. Lisp-2 debate". Lisp-1 refers to Scheme's model and Lisp-2 refers to Common Lisp's model. These names were coined in a 1988 paper by Richard P. Gabriel and Kent Pitman, which extensively compares the two approaches.


title: Common Lisp

text: Common Lisp supports the concept of "multiple values", where any expression always has a single "primary value", but it might also have any number of "secondary values", which might be received and inspected by interested callers. This concept is distinct from returning a list value, as the secondary values are fully optional, and passed via a dedicated side channel. This means that callers may remain entirely unaware of the secondary values being there if they have no need for them, and it makes it convenient to use the mechanism for communicating information that is sometimes useful, but not always necessary. For example,


title: Common Lisp

text: Multiple values are supported by a handful of standard forms, most common of which are the codice_35 special form for accessing secondary values and codice_36 for returning multiple values:


title: Common Lisp

text: Like programs in many other programming languages, Common Lisp programs make use of names to refer to variables, functions, and many other kinds of entities. Named references are subject to scope.


title: Common Lisp

text: To understand what a symbol refers to, the Common Lisp programmer must know what kind of reference is being expressed, what kind of scope it uses if it is a variable reference (dynamic versus lexical scope), and also the run-time situation: in what environment is the reference resolved, where was the binding introduced into the environment, et cetera.


title: Common Lisp

text: Some environments in Lisp are globally pervasive. For instance, if a new type is defined, it is known everywhere thereafter. References to that type look it up in this global environment.


title: Common Lisp

text: One type of environment in Common Lisp is the dynamic environment. Bindings established in this environment have dynamic extent, which means that a binding is established at the start of the execution of some construct, such as a codice_51 block, and disappears when that construct finishes executing: its lifetime is tied to the dynamic activation and deactivation of a block. However, a dynamic binding is not just visible within that block; it is also visible to all functions invoked from that block. This type of visibility is known as indefinite scope. Bindings which exhibit dynamic extent (lifetime tied to the activation and deactivation of a block) and indefinite scope (visible to all functions which are called from that block) are said to have dynamic scope.


title: Common Lisp

text: Common Lisp has support for dynamically scoped variables, which are also called special variables. Certain other kinds of bindings are necessarily dynamically scoped also, such as restarts and catch tags. Function bindings cannot be dynamically scoped using codice_17 (which only provides lexically scoped function bindings), but function objects (a first-level object in Common Lisp) can be assigned to dynamically scoped variables, bound using codice_51 in dynamic scope, then called using codice_32 or codice_57.


title: Common Lisp

text: Dynamic scope is extremely useful because it adds referential clarity and discipline to global variables. Global variables are frowned upon in computer science as potential sources of error, because they can give rise to ad-hoc, covert channels of communication among modules that lead to unwanted, surprising interactions.


title: Common Lisp

text: In Common Lisp, a special variable which has only a top-level binding behaves just like a global variable in other programming languages. A new value can be stored into it, and that value simply replaces what is in the top-level binding. Careless replacement of the value of a global variable is at the heart of bugs caused by the use of global variables. However, another way to work with a special variable is to give it a new, local binding within an expression. This is sometimes referred to as "rebinding" the variable. Binding a dynamically scoped variable temporarily creates a new memory location for that variable, and associates the name with that location. While that binding is in effect, all references to that variable refer to the new binding; the previous binding is hidden. When execution of the binding expression terminates, the temporary memory location is gone, and the old binding is revealed, with the original value intact. Of course, multiple dynamic bindings for the same variable can be nested.


title: Common Lisp

text: In Common Lisp implementations which support multithreading, dynamic scopes are specific to each thread of execution. Thus special variables serve as an abstraction for thread local storage. If one thread rebinds a special variable, this rebinding has no effect on that variable in other threads. The value stored in a binding can only be retrieved by the thread which created that binding. If each thread binds some special variable codice_58, then codice_58 behaves like thread-local storage. Among threads which do not rebind codice_58, it behaves like an ordinary global: all of these threads refer to the same top-level binding of codice_58.


title: Common Lisp

text: Dynamic variables can be used to extend the execution context with additional context information which is implicitly passed from function to function without having to appear as an extra function parameter. This is especially useful when the control transfer has to pass through layers of unrelated code, which simply cannot be extended with extra parameters to pass the additional data. A situation like this usually calls for a global variable. That global variable must be saved and restored, so that the scheme doesn't break under recursion: dynamic variable rebinding takes care of this. And that variable must be made thread-local (or else a big mutex must be used) so the scheme doesn't break under threads: dynamic scope implementations can take care of this also.


title: Common Lisp

text: In the Common Lisp library, there are many standard special variables. For instance, all standard I/O streams are stored in the top-level bindings of well-known special variables. The standard output stream is stored in *standard-output*.


title: Common Lisp

text: To capture its output in a character string, *standard-output* can be bound to a string stream and called:


title: Common Lisp

text: Common Lisp supports lexical environments. Formally, the bindings in a lexical environment have lexical scope and may have either an indefinite extent or dynamic extent, depending on the type of namespace. Lexical scope means that visibility is physically restricted to the block in which the binding is established. References which are not textually (i.e. lexically) embedded in that block simply do not see that binding.


title: Common Lisp

text: The tags in a TAGBODY have lexical scope. The expression (GO X) is erroneous if it is not embedded in a TAGBODY which contains a label X. However, the label bindings disappear when the TAGBODY terminates its execution, because they have dynamic extent. If that block of code is re-entered by the invocation of a lexical closure, it is invalid for the body of that closure to try to transfer control to a tag via GO:


title: Common Lisp

text: When the TAGBODY is executed, it first evaluates the setf form which stores a function in the special variable *stashed*. Then the (go end-label) transfers control to end-label, skipping the code (print "Hello"). Since end-label is at the end of the tagbody, the tagbody terminates, yielding NIL. Suppose that the previously remembered function is now called:


title: Common Lisp

text: This situation is erroneous. One implementation's response is an error condition containing the message, "GO: tagbody for tag SOME-LABEL has already been left". The function tried to evaluate (go some-label), which is lexically embedded in the tagbody, and resolves to the label. However, the tagbody isn't executing (its extent has ended), and so the control transfer cannot take place.


title: Common Lisp

text: Local function bindings in Lisp have lexical scope, and variable bindings also have lexical scope by default. By contrast with GO labels, both of these have indefinite extent. When a lexical function or variable binding is established, that binding continues to exist for as long as references to it are possible, even after the construct which established that binding has terminated. References to lexical variables and functions after the termination of their establishing construct are possible thanks to lexical closures.


title: Common Lisp

text: Lexical binding is the default binding mode for Common Lisp variables. For an individual symbol, it can be switched to dynamic scope, either by a local declaration, by a global declaration. The latter may occur implicitly through the use of a construct like DEFVAR or DEFPARAMETER. It is an important convention in Common Lisp programming that special (i.e. dynamically scoped) variables have names which begin and end with an asterisk sigil codice_62 in what is called the "earmuff convention". If adhered to, this convention effectively creates a separate namespace for special variables, so that variables intended to be lexical are not accidentally made special.


title: Common Lisp

text: Firstly, references to variables and functions can be compiled to efficient machine code, because the run-time environment structure is relatively simple. In many cases it can be optimized to stack storage, so opening and closing lexical scopes has minimal overhead. Even in cases where full closures must be generated, access to the closure's environment is still efficient; typically each variable becomes an offset into a vector of bindings, and so a variable reference becomes a simple load or store instruction with a base-plus-offset addressing mode.


title: Common Lisp

text: Secondly, lexical scope (combined with indefinite extent) gives rise to the lexical closure, which in turn creates a whole paradigm of programming centered around the use of functions being first-class objects, which is at the root of functional programming.


title: Common Lisp

text: Thirdly, perhaps most importantly, even if lexical closures are not exploited, the use of lexical scope isolates program modules from unwanted interactions. Due to their restricted visibility, lexical variables are private. If one module A binds a lexical variable X, and calls another module B, references to X in B will not accidentally resolve to the X bound in A. B simply has no access to X. For situations in which disciplined interactions through a variable are desirable, Common Lisp provides special variables. Special variables allow for a module A to set up a binding for a variable X which is visible to another module B, called from A. Being able to do this is an advantage, and being able to prevent it from happening is also an advantage; consequently, Common Lisp supports both lexical and dynamic scope.


title: Common Lisp

text: A "macro" in Lisp superficially resembles a function in usage. However, rather than representing an expression which is evaluated, it represents a transformation of the program source code. The macro gets the source it surrounds as arguments, binds them to its parameters and computes a new source form. This new form can also use a macro. The macro expansion is repeated until the new source form does not use a macro. The final computed form is the source code executed at runtime.


title: Common Lisp

text: Macros are defined by the "defmacro" macro. The special operator "macrolet" allows the definition of local (lexically scoped) macros. It is also possible to define macros for symbols using "define-symbol-macro" and "symbol-macrolet".


title: Common Lisp

text: Paul Graham's book On Lisp describes the use of macros in Common Lisp in detail. Doug Hoyte's book Let Over Lambda extends the discussion on macros, claiming "Macros are the single greatest advantage that lisp has as a programming language and the single greatest advantage of any programming language." Hoyte provides several examples of iterative development of macros.


title: Common Lisp

text: Macros allow Lisp programmers to create new syntactic forms in the language. One typical use is to create new control structures. The example macro provides an codice_73 looping construct. The syntax is:


title: Common Lisp

text: "tagbody" is a primitive Common Lisp special operator which provides the ability to name tags and use the "go" form to jump to those tags. The backquote "`" provides a notation that provides code templates, where the value of forms preceded with a comma are filled in. Forms preceded with comma and at-sign are "spliced" in. The tagbody form tests the end condition. If the condition is true, it jumps to the end tag. Otherwise, the provided body code is executed and then it jumps to the start tag.


title: Common Lisp

text: The code can be expanded using the function "macroexpand-1". The expansion for the above example looks like this:


title: Common Lisp

text: During macro expansion the value of the variable "test" is "(= (random 10) 0)" and the value of the variable "body" is "((write-line "Hello"))". The body is a list of forms.


title: Common Lisp

text: Symbols are usually automatically upcased. The expansion uses the TAGBODY with two labels. The symbols for these labels are computed by GENSYM and are not interned in any package. Two "go" forms use these tags to jump to. Since "tagbody" is a primitive operator in Common Lisp (and not a macro), it will not be expanded into something else. The expanded form uses the "when" macro, which also will be expanded. Fully expanding a source form is called "code walking".


title: Common Lisp

text: All macros must be expanded before the source code containing them can be evaluated or compiled normally. Macros can be considered functions that accept and return S-expressions – similar to abstract syntax trees, but not limited to those. These functions are invoked before the evaluator or compiler to produce the final source code.


title: Common Lisp

text: Macros are written in normal Common Lisp, and may use any Common Lisp (or third-party) operator available.


title: Common Lisp

text: Common Lisp macros are capable of what is commonly called "variable capture", where symbols in the macro-expansion body coincide with those in the calling context, allowing the programmer to create macros wherein various symbols have special meaning. The term "variable capture" is somewhat misleading, because all namespaces are vulnerable to unwanted capture, including the operator and function namespace, the tagbody label namespace, catch tag, condition handler and restart namespaces.


title: Common Lisp

text: The Scheme dialect of Lisp provides a macro-writing system which provides the referential transparency that eliminates both types of capture problem. This type of macro system is sometimes called "hygienic", in particular by its proponents (who regard macro systems which do not automatically solve this problem as unhygienic).


title: Common Lisp

text: One approach is to use gensyms: guaranteed-unique symbols which can be used in a macro-expansion without threat of capture. The use of gensyms in a macro definition is a manual chore, but macros can be written which simplify the instantiation and use of gensyms. Gensyms solve type 2 capture easily, but they are not applicable to type 1 capture in the same way, because the macro expansion cannot rename the interfering symbols in the surrounding code which capture its references. Gensyms could be used to provide stable aliases for the global symbols which the macro expansion needs. The macro expansion would use these secret aliases rather than the well-known names, so redefinition of the well-known names would have no ill effect on the macro.


title: Common Lisp

text: Another approach is to use packages. A macro defined in its own package can simply use internal symbols in that package in its expansion. The use of packages deals with type 1 and type 2 capture.


title: Common Lisp

text: However, packages don't solve the type 1 capture of references to standard Common Lisp functions and operators. The reason is that the use of packages to solve capture problems revolves around the use of private symbols (symbols in one package, which are not imported into, or otherwise made visible in other packages). Whereas the Common Lisp library symbols are external, and frequently imported into or made visible in user-defined packages.


title: Common Lisp

text: The following is an example of unwanted capture in the operator namespace, occurring in the expansion of a macro:


title: Common Lisp

text: The codice_73 macro will expand into a form which calls codice_75 which is intended to refer to the standard Common Lisp macro codice_75. However, in this context, codice_75 may have a completely different meaning, so codice_73 may not work properly.


title: Common Lisp

text: Common Lisp solves the problem of the shadowing of standard operators and functions by forbidding their redefinition. Because it redefines the standard operator codice_75, the preceding is actually a fragment of non-conforming Common Lisp, which allows implementations to diagnose and reject it.


title: Common Lisp

text: The "condition system" is responsible for exception handling in Common Lisp. It provides "conditions", "handler"s and "restart"s. "Condition"s are objects describing an exceptional situation (for example an error). If a "condition" is signaled, the Common Lisp system searches for a "handler" for this condition type and calls the handler. The "handler" can now search for restarts and use one of these restarts to automatically repair the current problem, using information such as the condition type and any relevant information provided as part of the condition object, and call the appropriate restart function.


title: Common Lisp

text: These restarts, if unhandled by code, can be presented to users (as part of a user interface, that of a debugger for example), so that the user can select and invoke one of the available restarts. Since the condition handler is called in the context of the error (without unwinding the stack), full error recovery is possible in many cases, where other exception handling systems would have already terminated the current routine. The debugger itself can also be customized or replaced using the codice_80 dynamic variable. Code found within "unwind-protect" forms such as finalizers will also be executed as appropriate despite the exception.


title: Common Lisp

text: In the following example (using Symbolics Genera) the user tries to open a file in a Lisp function "test" called from the Read-Eval-Print-LOOP (REPL), when the file does not exist. The Lisp system presents four restarts. The user selects the "Retry OPEN using a different pathname" restart and enters a different pathname (lispm-init.lisp instead of lispm-int.lisp). The user code does not contain any error handling code. The whole error handling and restart code is provided by the Lisp system, which can handle and repair the error without terminating the user code.


title: Common Lisp

text: Common Lisp includes a toolkit for object-oriented programming, the Common Lisp Object System or CLOS. Peter Norvig explains how many Design Patterns are simpler to implement in a dynamic language with the features of CLOS (Multiple Inheritance, Mixins, Multimethods, Metaclasses, Method combinations, etc.).


title: Common Lisp

text: Several extensions to Common Lisp for object-oriented programming have been proposed to be included into the ANSI Common Lisp standard, but eventually CLOS was adopted as the standard object-system for Common Lisp. CLOS is a dynamic object system with multiple dispatch and multiple inheritance, and differs radically from the OOP facilities found in static languages such as C++ or Java. As a dynamic object system, CLOS allows changes at runtime to generic functions and classes. Methods can be added and removed, classes can be added and redefined, objects can be updated for class changes and the class of objects can be changed.


title: Common Lisp

text: CLOS has been integrated into ANSI Common Lisp. Generic functions can be used like normal functions and are a first-class data type. Every CLOS class is integrated into the Common Lisp type system. Many Common Lisp types have a corresponding class. There is more potential use of CLOS for Common Lisp. The specification does not say whether conditions are implemented with CLOS. Pathnames and streams could be implemented with CLOS. These further usage possibilities of CLOS for ANSI Common Lisp are not part of the standard. Actual Common Lisp implementations use CLOS for pathnames, streams, input–output, conditions, the implementation of CLOS itself and more.


title: Common Lisp

text: A Lisp interpreter directly executes Lisp source code provided as Lisp objects (lists, symbols, numbers, ...) read from s-expressions. A Lisp compiler generates bytecode or machine code from Lisp source code. Common Lisp allows both individual Lisp functions to be compiled in memory and the compilation of whole files to externally stored compiled code ("fasl" files).


title: Common Lisp

text: Several implementations of earlier Lisp dialects provided both an interpreter and a compiler. Unfortunately often the semantics were different. These earlier Lisps implemented lexical scoping in the compiler and dynamic scoping in the interpreter. Common Lisp requires that both the interpreter and compiler use lexical scoping by default. The Common Lisp standard describes both the semantics of the interpreter and a compiler. The compiler can be called using the function "compile" for individual functions and using the function "compile-file" for files. Common Lisp allows type declarations and provides ways to influence the compiler code generation policy. For the latter various optimization qualities can be given values between 0 (not important) and 3 (most important): "speed", "space", "safety", "debug" and "compilation-speed".


title: Common Lisp

text: There is also a function to evaluate Lisp code: codice_81. codice_81 takes code as pre-parsed s-expressions and not, like in some other languages, as text strings. This way code can be constructed with the usual Lisp functions for constructing lists and symbols and then this code can be evaluated with the function codice_81. Several Common Lisp implementations (like Clozure CL and SBCL) are implementing codice_81 using their compiler. This way code is compiled, even though it is evaluated using the function codice_81.


title: Common Lisp

text: The file compiler is invoked using the function "compile-file". The generated file with compiled code is called a "fasl" (from "fast load") file. These "fasl" files and also source code files can be loaded with the function "load" into a running Common Lisp system. Depending on the implementation, the file compiler generates byte-code (for example for the Java Virtual Machine), C language code (which then is compiled with a C compiler) or, directly, native code.


title: Common Lisp

text: Common Lisp implementations can be used interactively, even though the code gets fully compiled. The idea of an Interpreted language thus does not apply for interactive Common Lisp.


title: Common Lisp

text: The language makes a distinction between read-time, compile-time, load-time, and run-time, and allows user code to also make this distinction to perform the wanted type of processing at the wanted step.


title: Common Lisp

text: Some special operators are provided to especially suit interactive development; for instance, codice_86 will only assign a value to its provided variable if it wasn't already bound, while codice_87 will always perform the assignment. This distinction is useful when interactively evaluating, compiling and loading code in a live image.


title: Common Lisp

text: Some features are also provided to help writing compilers and interpreters. Symbols consist of first-level objects and are directly manipulable by user code. The codice_88 special operator allows to create lexical bindings programmatically, while packages are also manipulable. The Lisp compiler is available at runtime to compile files or individual functions. These make it easy to use Lisp as an intermediate compiler or interpreter for another language.


title: Common Lisp

text: The following program calculates the smallest number of people in a room for whom the probability of unique birthdays is less than 50% (the birthday paradox, where for 1 person the probability is obviously 100%, for 2 it is 364/365, etc.). The answer is 23.


title: Common Lisp

text: WITH-OPEN-FILE is a macro that opens a file and provides a stream. When the form is returning, the file is automatically closed. FUNCALL calls a function object. The LOOP collects all lines that match the predicate.


title: Common Lisp

text: The function AVAILABLE-SHELLS calls the above function LIST-MATCHING-LINES with a pathname and an anonymous function as the predicate. The predicate returns the pathname of a shell or NIL (if the string is not the filename of a shell).


title: Common Lisp

text: Common Lisp is most frequently compared with, and contrasted to, Scheme—if only because they are the two most popular Lisp dialects. Scheme predates CL, and comes not only from the same Lisp tradition but from some of the same engineers—Guy Steele, with whom Gerald Jay Sussman designed Scheme, chaired the standards committee for Common Lisp.


title: Common Lisp

text: Common Lisp is a general-purpose programming language, in contrast to Lisp variants such as Emacs Lisp and AutoLISP which are extension languages embedded in particular products (GNU Emacs and AutoCAD, respectively). Unlike many earlier Lisps, Common Lisp (like Scheme) uses lexical variable scope by default for both interpreted and compiled code.


title: Common Lisp

text: Most of the Lisp systems whose designs contributed to Common Lisp—such as ZetaLisp and Franz Lisp—used dynamically scoped variables in their interpreters and lexically scoped variables in their compilers. Scheme introduced the sole use of lexically scoped variables to Lisp; an inspiration from ALGOL 68. CL supports dynamically scoped variables as well, but they must be explicitly declared as "special". There are no differences in scoping between ANSI CL interpreters and compilers.


title: Common Lisp

text: Common Lisp is sometimes termed a "Lisp-2" and Scheme a "Lisp-1", referring to CL's use of separate namespaces for functions and variables. (In fact, CL has "many" namespaces, such as those for go tags, block names, and codice_72 keywords). There is a long-standing controversy between CL and Scheme advocates over the tradeoffs involved in multiple namespaces. In Scheme, it is (broadly) necessary to avoid giving variables names which clash with functions; Scheme functions frequently have arguments named codice_92, codice_93, or codice_94 so as not to conflict with the system function codice_95. However, in CL it is necessary to explicitly refer to the function namespace when passing a function as an argument—which is also a common occurrence, as in the codice_11 example above.


title: Common Lisp

text: CL also differs from Scheme in its handling of boolean values. Scheme uses the special values #t and #f to represent truth and falsity. CL follows the older Lisp convention of using the symbols T and NIL, with NIL standing also for the empty list. In CL, "any" non-NIL value is treated as true by conditionals, such as codice_68, whereas in Scheme all non-#f values are treated as true. These conventions allow some operators in both languages to serve both as predicates (answering a boolean-valued question) and as returning a useful value for further computation, but in Scheme the value '() which is equivalent to NIL in Common Lisp evaluates to true in a boolean expression.


title: Common Lisp

text: Lastly, the Scheme standards documents require tail-call optimization, which the CL standard does not. Most CL implementations do offer tail-call optimization, although often only when the programmer uses an optimization directive. Nonetheless, common CL coding style does not favor the ubiquitous use of recursion that Scheme style prefers—what a Scheme programmer would express with tail recursion, a CL user would usually express with an iterative expression in codice_75, codice_99, codice_72, or (more recently) with the codice_101 package.


title: Common Lisp

text: Common Lisp is defined by a specification (like Ada and C) rather than by one implementation (like Perl). There are many implementations, and the standard details areas in which they may validly differ.


title: Common Lisp

text: In addition, implementations tend to come with extensions, which provide functionality not covered in the standard:


title: Common Lisp

text: Free and open-source software libraries have been created to support extensions to Common Lisp in a portable way, and are most notably found in the repositories of the Common-Lisp.net and CLOCC (Common Lisp Open Code Collection) projects.


title: Common Lisp

text: Common Lisp implementations may use any mix of native code compilation, byte code compilation or interpretation. Common Lisp has been designed to support incremental compilers, file compilers and block compilers. Standard declarations to optimize compilation (such as function inlining or type specialization) are proposed in the language specification. Most Common Lisp implementations compile source code to native machine code. Some implementations can create (optimized) stand-alone applications. Others compile to interpreted bytecode, which is less efficient than native code, but eases binary-code portability. Some compilers compile Common Lisp code to C code. The misconception that Lisp is a purely interpreted language is most likely because Lisp environments provide an interactive prompt and that code is compiled one-by-one, in an incremental way. With Common Lisp incremental compilation is widely used.


title: Common Lisp

text: Some Unix-based implementations (CLISP, SBCL) can be used as a scripting language; that is, invoked by the system transparently in the way that a Perl or Unix shell interpreter is.


title: Common Lisp

text: Common Lisp is used to develop research applications (often in Artificial Intelligence), for rapid development of prototypes or for deployed applications.


title: Common Lisp

text: Common Lisp is used in many commercial applications, including the Yahoo! Store web-commerce site, which originally involved Paul Graham and was later rewritten in C++ and Perl. Other notable examples include:


title: Common Lisp

text: A chronological list of books published (or about to be published) about Common Lisp (the language) or about programming with Common Lisp (especially AI programming).


title: Asilidae

text: The Asilidae are the robber fly family, also called assassin flies. They are powerfully built, bristly flies with a short, stout proboscis enclosing the sharp, sucking hypopharynx. The name "robber flies" reflects their notoriously aggressive predatory habits; they feed mainly or exclusively on other insects and, as a rule, they wait in ambush and catch their prey in flight.


title: Asilidae

text: The Asilidae are a family in the order Diptera, the true flies. The common name for members of the family is the robber flies. The Asilidae are cosmopolitan, with over 7000 described species. Latreille was the authority for establishing the family in 1802. The Asilidae, together with Bombyliidae and Therevidae, are the most representative families of the superfamily of Asiloidea and they form one of the most characteristic groups of the lower Brachycera.


title: Asilidae

text: Robber flies have stout, spiny legs and three simple eyes (ocelli) in a characteristic depression on the tops of their head between their two large compound eyes. They also have a usually dense moustache of stiff bristles on the face; this is called the mystax, a term derived from the Greek "mystakos" meaning "moustache" or "upper lip". The mystax has been suggested to afford some protection for the head and face when the flies deal with struggling prey; various Asilidae prey on formidable species including stinging Hymenoptera, powerful grasshoppers, dragonflies and even other Asilidae, in fact practically anything of a suitable size. Some Asilidae do, however, specialize in smaller prey, and this is reflected in their more gracile build.


title: Asilidae

text: In general, the family attacks a very wide range of prey, including other flies, beetles, butterflies and moths, various bees, ants, dragonflies and damselflies, ichneumon wasps, grasshoppers, and some spiders. They do so apparently irrespective of any chemicals the prey may have at their disposal. Many Asilidae when attacked in turn do not hesitate to defend themselves with their probosces and may deliver intensely painful bites if handled incautiously.


title: Asilidae

text: The antennae are short, have three segments, and sometimes bear a bristle-like structure called an arista.


title: Asilidae

text: Though they are a very characteristic group for such a large family, the Asilidae may easily be confused with the related and less widely known family Therevidae. Some points of contrast between the families include that the labium in the Therevidae is not a piercing, predatory organ, but ends in two fleshy labella adapted to the sucking of liquid foods. Again, the Therevidae commonly have fluffy setae above the mouthparts, unlike the stiff chaetae comprising the mystax of the Asilidae. Furthermore, in the Asilidae the depression on the vertex between the eyes tends to be more obvious than in the Therevidae.


title: Asilidae

text: The fly attacks its prey by stabbing it with its short, strong proboscis, injecting the victim with saliva containing neurotoxic and proteolytic enzymes which very rapidly paralyze the victim and soon digest the insides; the fly then sucks the liquefied material through the proboscis.


title: Asilidae

text: Many Asilidae have long, tapering abdomens, sometimes with a sword-like ovipositor. Others, for instance "Laphria," are fat-bodied bumblebee mimics.


title: Asilidae

text: Female robber flies deposit whitish-colored eggs on low-lying plants and grasses, or in crevices within soil, bark, or wood. Egg-laying habits depend on the species and their specific habitat; most species lay their eggs in masses, which are then covered with a chalky protective coating.


title: Asilidae

text: After hatching, robber fly larvae generally seem to live in soil, rotting wood, leaf mold, and similar materials, some being predatory and others detrivorous. Larvae are also predacious, feeding on eggs, larvae, or other soft-bodied insects. Robber flies overwinter as larvae and pupate in the soil. Pupae migrate to the soil surface and emerge as adults, often leaving behind their pupal casing. Complete development ranges from one to three years, depending on species and environmental conditions.


title: Asilidae

text: Adults are generally medium to large in size, with an average body width of , but with a range of to more than in length. The shape is generally elongated, due to the conformation of the long tapering abdomen, however there are also compact species with broad abdomens. The integument is covered with thick hair, especially on the head and thorax and liveries are often showy, with colors ranging from brown to black to grey, sometimes in contrast with other colors such as red and yellow. Frequently they are aposematic, imitating the livery of Hymenoptera.


title: Asilidae

text: The head is free and mobile and dichoptic in both sexes and has three ocelli arranged in a characteristic depression formed by the elevation of the compound eyes. This feature is clearly visible in the front view and is a morphological peculiarity of Asilidae. The occipital region has one or more rows of bristles aligned behind the posterior margin of the eye. The facial region has a convex profile with a characteristic dense bundle of bristles, called a "mystax". The mystax helps protect the head and face when the fly encounters prey bent on defense. Other bristles are arranged on the ocellar tubercle.


title: Asilidae

text: The antennae are of the aristate type, composed typically of five segments but sometimes from three to four, depending on the structure of the stylus. The scape and pedicel are generally relatively short and hairy; the third segment (or first flagellomere) has an oval or oblong shape, is generally longer than the two basal segments, and bears a stylus generally composed of two segments, of which the basal is very short. In some asilids, the stylus can be monoarticolate or absent.


title: Asilidae

text: The mouthparts are short and modified for piercing-sucking. They consist of a strongly sclerotized proboscis which includes the labium and maxillae which form a food canal, the labrum and a piercing organ, the hypopharynx. The proboscis is rounded in cross section or laterally or dorsoventrally compressed and is usually stout, and straight and sometimes able to penetrate through the hard integument of Coleoptera. The maxillary palpi are at the base beside the labium, two-segmented in all Dasypogoninae or single segmented in Asilinae and Leptogastrinae.


title: Asilidae

text: The thorax is robust and compact. Unlike in other lower Brachycera, it bears long bristles (macrochaeta) useful as taxonomic characters. Bristles of this type are always present on the notopleuron (notopleural bristles) and, in two series, on mesonotum (dorsocentral, supralar and postalar). Other bristles are present on the metanotum (dorsocentral bristles on the ventral episternum and at the apex of the mesoscutellum.


title: Asilidae

text: The legs are relatively long and strong, with many macrochaetes performing a raptatorial function. The wings are well developed, often relatively narrow for speedy flight; the alula is generally well developed, with the exception of the Leptogastrinae and part of Dasypogoninae. The venation is much as in the Rhagionidae, Tabanidae, and Therevidae; the radial R is always four-branched, with R2+3 unbranched. Details of wing venation determine subfamilies and lower taxa. The wings are most often hyaline, but sometimes smoky or dark colored, or partly infuscated in many genera or completely darkened.


title: Asilidae

text: The abdomen consists of six to eight visible segments preceding the genitalia in males, but the eighth segment is sometimes entirely or partially concealed, and terminal forming the ovipositor. It is long and narrow conical in most species, but wide, dorsoventrally flattened and short in bee mimics. In the Leptogastrinae, the abdomen is extremely long and slender. In some tribes, the male undergoes axial torsion of 180°.


title: Asilidae

text: The egg is hyaline or pigmented and of variable shape from spherical to oval and up to 2 mm in length. The surface is smooth or bears microsculptures, which are generally polygonal and visible only in the electron microscope.


title: Asilidae

text: The larva is apodous, cylindrical, and elongated, more or less flattened dorsoventrally and tapered at the cephalic and caudal ends. The colour is white or yellowish. The head is small, rugged, dark-pigmented and hypognathous, the abdomen is composed of eight apparent urites, with the last two often fused and more or less reduced. The respiratory system is amphineustic, with two pairs of spiracles, one thoracic and one abdominal. Also, rudimentary and nonfunctional stigmata occur in other abdominal segments.


title: Asilidae

text: The Asilidae are predators, in both the juvenile and the adult stages, and feed on small arthropods, mainly insects. Although predatory forms in the adult stage are present in other taxonomic groups of Diptera, the Asilidae are the most representative for the number of species and for uniformity of feeding behavior. They are aggressive to the point of earning the common name, in English, of "robber flies". The combination of high biodiversity and high predatory activity leads to this family playing an important role in the ecological stability of entomofauna.


title: Asilidae

text: The lifecycle takes place in 1–3 years. The postembryonic development consists of four larval stages (instars) and one pupa. The larvae of the first instar differ from other stages in both ethology and trophic regime. The larvae of most known asilids live in the soil or in the case of some taxonomic groups, in rotting organic material, usually wood and the bark of dead trees. With regards to feeding behavior, most of the literature describes Asilidae larvae as entomophagous, but doubts remain about the real nature of the trophic regime and its mechanisms. The entomophagy of some species had indeed been already hypothesized by some authors of the 19th century, based on the findings of larvae of asilids associated with larvae of other insects, but Melin (1923) asserted that, in reality, predation was occasional and secondary to the plant-based diet. More recent studies have confirmed the entomophagy of some asilids without extending this species' feeding behavior for the whole family. Less certain, however, is the mechanism of entomophagy: in general, the behavior is cited as predation, but for some species may be ectoparasitoids. Musso (1983) described the feeding behavior of the larvae of "Machimus rusticus": the larvae of the first instar does not feed on insects, those of the second instar feed on secretions by larvae of beetles (and may cause death), while the larvae of the third and fourth instars actually behave like predators. In short, the feeding behavior of larval asilids can be intermediate between predation and ectoparasitism.


title: Asilidae

text: Much better known and described in detail is the behavior of adults. In general, predation in adults is concentrated in the hottest hours in open, sunny spaces, while at night, they take refuge in dense vegetation. The Asilidae are excellent flyers, and in most of the family, capture prey in flight. They are often seen stationed to ambush prey at strategic points. This behavior signifies that sight plays an essential role in the detection of prey and their capture. The prey is caught with the tarsi and injected with a paralyzing saliva. The asilid pierces the integument of the prey with the prepharyx (hyopharynx) in preferential points of least resistance such as the eyes, the membranous area of transition between the head and thorax (neck) or between thorax and abdomen, or between the last urotergiti. Puncture is followed by the injection of saliva, whose active components perform two functions: The neurotoxins cause paralysis of the victim, while proteolytic enzymes lead to the breakup and liquefaction of internal tissues; in a short time, the predator is able to feed by sucking the internal fluids through the alimentary canal.


title: Asilidae

text: With regards to interspecific trophic relationships, a large number of reports exists on the prey captured by the Asilidae. Lavigne (2003) has developed a database comprising over 13,000 reports. The prey of Asilidi are predominantly represented by other insects, mostly winged, but several cases in which they have attacked spiders have also been reported. Within the insects, orders that include the most frequent prey of asilids include a wide range of families within the Coleoptera, Hymenoptera, other Diptera, Hemiptera, and Lepidoptera; prey belonging to various other orders (Odonata, Neuroptera, Isoptera, Thysanoptera, Blattodea, etc.) are also mentioned.


title: Asilidae

text: With regards to the specificity of the trophic relationship, Wood (1981) mentions some studies in the literature on the subject. Some genera have been found to be monophagic, but more generally the Asilidae are polyphagic with behaviors that vary from stenophagia to euriphagia. However, cases are reported of stenohage asilids, which if necessary, focus their predatory activity against a species when this forms large populations.


title: Asilidae

text: Other studies have shown that the ratio between the size of the prey and the asilid varies from 1.8:1 to 3.7:1, with an average of 2.6:1. The ratio tends to increase with decreasing size of the predator.


title: Asilidae

text: Egg-laying takes place, according to the species, with three different behaviors that relate to the structure and the morphology of the abdomen. Females with an undifferentiated ovipositor release eggs randomly and independently from the substrate. In other cases, however, the abdomen bears a differentiated, specialized ovipositor to lay eggs in the soil or sand, or lay them in cavities within plant tissues.


title: Asilidae

text: Asilidae generally occur in habitats that are open, sunny, and dry, even arid. They favour open or scattered vegetation, and some species even frequent bare ground. Typical habitats include savannah, forest steppe, open steppe, semidesert, maquis shrubland, and related shrubland types such as fynbos and chaparral. Their biodiversity is lower in forested ecosystems, and where asilids do occur in such environments, they tend to concentrate in the glades and margins. In those conditions, the interrupted canopy leaves space for various species of shrubs and herbaceous plants suited to asilid styles of predation.


title: Asilidae

text: In general, the biology of the Asilidae is still poorly known, but various authors have studied the population distribution in particular regions and ecosystems. They have classified the behavioral patterns in terms of microenvironments, ecological, and trophic factors, showing how different species of Asilidae favour particular habitats suited to particular patterns of reproduction and predation. Specific studies show correlations between the floristic composition and predatory behaviour.


title: Asilidae

text: Asilidae occur in all zoogeographical regions except Antarctica. In the Northern Hemisphere, some species are even adapted to tundra. Alpine species occur at altitudes exceeding 4000 meters/13,000 feet. However, the highest levels of biodiversity are in warm climates; tropical or subtropical and arid or semi-arid regions tend to have the greatest variety of species, followed by areas where rainfall is highly seasonal.


title: Asilidae

text: The Asilidae currently include over 7500 described species in about 556 genera. Their taxonomy is still under study in the light of new specimens and cladistic analysis. The 14 accepted subfamilies are:


title: Asilidae

text: The oldest known member of the family is "Araripogon" from the Early Cretaceous (Aptian) Crato Formation of Brazil.


title: Asilidae

text: Carl Linnaeus (Linné; 1758), in the 10th edition of "Systema Naturae", erected the genus "Asilus", including 11 species, and added four others in the 12th edition (1767). "Asilus crabroniformis" (1758) is the type of the genus. The rank of family is credited to Leach in Samouelle (1819). Johan Christian Fabricius in five publications dated from 1775 to 1805, erected the genus "Damalis" and described 76 exotic and European species. Wiedemann, in publications appearing between 1817 and 1830, described 235 species, many exotic. Johann Wilhelm Meigen in an early work of 1803 erected four genera, three of which now represent subfamilies. He also described many species in "Systematische Beschreibung der bekannten europäischen zweiflügeligen Insekten" (1800 to 1838). During the rest of the 19th century, significant contributions were made by Hermann Loew in particular. Other prominent authors dealing with the Asilidae during the 19th century included Pierre-Justin-Marie Macquart, Francis Walker, Camillo Rondani, and Jacques-Marie-Frangile Bigot.


title: Virgin America

text: Virgin America Inc. was a low-cost U.S. airline that operated from 2007 until 2018, when it was acquired by Alaska Airlines. The airline primarily focused on operating low-fare service between cities on the West Coast and other major metropolitan areas, with higher quality service. It was headquartered in the San Francisco Bay Area city of Burlingame, and operated domestic flights to major U.S. cities, primarily from hubs at San Francisco and Los Angeles as well as a smaller focus city operation at Love Field in Dallas.


title: Virgin America

text: The airline began operations in 2007 as an independent airline company using branding licensed from the United Kingdom–based Virgin Group, which also controls the brand of the Virgin Atlantic and Virgin Australia airlines. The Alaska Air Group acquired Virgin America in April 2016, at a cost of approximately $4 billion and continued to operate Virgin America under its own name and brand until the airline was fully merged into Alaska Airlines on April 24, 2018.


title: Virgin America

text: In early 2004, Virgin Group announced its intention to found a United States-based, low-fare airline called "Virgin USA". At the time, Virgin USA expected flights to begin by mid-2005. After considering several key areas, the San Francisco Bay Area was chosen as the location of its flight operations center and later as its corporate headquarters. The airline changed its name from "Virgin USA" to "Virgin America" and due to the difficulty in finding U.S. investors willing to gamble on a new airline in an already congested industry, the launch date was pushed back from mid-2005 to early 2006.


title: Virgin America

text: Virgin America secured U.S. investors Black Canyon Capital and Cyrus Capital Partners in late 2005. Once the new owners were on board, Virgin's General Counsel submitted the required U.S. Department of Transportation certificate application on December 9, 2005. Unfortunately, despite significant public support for the new California-based airline, the approval process was mired in a debate between the supportive city and state representatives from California and New York and the opposing national aviation labor union, Air Line Pilots Association, as well as a potential competitor Continental Airlines. The review of Virgin America's application was prolonged due to this opposition, which claimed Virgin America, a subsidiary of the United Kingdom-based Virgin Group, would not be under U.S. ownership or control. The application was initially denied by the Department of Transportation on December 27, 2006.


title: Virgin America

text: In order to achieve the necessary approval, Virgin America's General Counsel David Pflieger and CEO Fred Reid filed a revised application that proposed a restructuring of the airline in January 2007; voting shares would be held by a Department of Transportation-approved trust and only two Virgin Group directors would be on the eight-person board. Additionally, Virgin America was open to removing Richard Branson from the airline's board of directors and possibly removing the "Virgin" brand from the title altogether. Virgin America was tentatively cleared to fly by the U.S. Department of Transportation on March 20, 2007, on the condition that the airline would alter its business structure, including the limitation of foreign ownership shares to 25% and the replacement of Fred Reid (who had been hired by Virgin Group). The airline protested the stipulation concerning Reid's removal to the federal regulators, arguing that the other stipulations ensured that the business would not be ruled by foreign interests. The Department of Transportation's final agreement allowed Reid to remain involved with Virgin America until February 2008, after which he was required to leave the company.


title: Virgin America

text: Virgin America began selling tickets in July 2007. On August 8, 2007, the airline made its inaugural New York and Los Angeles to San Francisco flights — the aircraft was named "Air Colbert", after comedian Stephen Colbert. In December 2007, C. David Cush replaced Reid as CEO of the airline. From the beginning of operations, Virgin America reported losses, beginning with $270 million in its first month, until the third quarter of 2010, when it achieved its first profit of $7.5 million.


title: Virgin America

text: On May 21, 2009, Virgin America became the first U.S. airline to offer Wi-Fi access via Gogo Inflight Internet on every flight. Between November 10, 2009, and January 15, 2010, the airline offered free WiFi with a subsidy from Google. On December 17, 2014, Virgin America announced that it would offer faster fleet-wide ATG-4 in-flight WiFi service from Gogo, with speeds three times faster than the first generation system.


title: Virgin America

text: In March 2010, Virgin America announced its intention to start flying to Toronto from Los Angeles and San Francisco, making it the airline's first international destination. Following the Department of Transportation's approval of Virgin America's proposal to fly to Canada, international service began with flights to Toronto Pearson International Airport on June 29, 2010. However, due to high operating costs, response from competitors, slower growth than anticipated, and higher demand for Dallas/Fort Worth, Virgin America terminated Toronto service on April 6, 2011. Virgin America began its service to Dallas/Fort Worth International Airport in December 2010, and continued until after the repeal of the Wright Amendment in October 2014, when the airline leased two gates and established a focus city at Dallas Love Field and enhanced the number of connecting destinations. As a result, Virgin America transported almost 31,000 passengers through Dallas Love Field in the first month, achieving 3.58% market share at Dallas Love Field.


title: Virgin America

text: Virgin America announced in January 2011 a firm order for sixty new Airbus A320 aircraft, including thirty new Airbus A320neos, that would be delivered starting in 2016, as a formal expansion of an initial commitment made by Richard Branson at the Farnborough Airshow in July 2010, though in November 2012 the airline deferred delivery of the aircraft to 2020. In April 2011, Virgin America's hub at San Francisco International Airport relocated to the newly remodeled Terminal 2, sharing the gates with American Airlines. In late October 2011, the airline migrated to Sabre's global distribution system (GDS) that handles reservations, frequent-flier accounts, flight operations data and crew scheduling. Difficulties with the changeover sparked widespread customer complaints, due to early technical malfunctions surrounding the program. On December 12, 2012, Virgin America opened their first airport lounge, the Virgin America Loft, at Los Angeles International Airport.


title: Virgin America

text: Virgin America had its first public offering at the NASDAQ stock exchange on November 14, 2014, selling 13.3 million shares to raise $307 million for the company.


title: Virgin America

text: A number of airlines interested in a takeover of Virgin America approached the airline in late 2015, prompting Virgin America to correspond with an undisclosed financial adviser about how and if to proceed with a sale. Alaska Air Group and JetBlue were the two most interested companies to make offers to purchase the airline from Virgin Group. In December 2015, Alaska was interested at $44.75 per share, before JetBlue manifested its interest in February 2016. A bidding war ensued culminating on March 31 and April 1 at $57 per share, (57/38.9-1)*100round0% higher than the day's closure at $38.9. On April 4, 2016, Alaska Air Group announced that it had agreed to buy Virgin America for $2.6 billion. Including debt and aircraft leases, the transaction was worth approximately $4 billion. Had the merger agreement been terminated by Virgin America, they would have been contractually obligated to pay Alaska Air Group a termination fee equal to $78.5 million.


title: Virgin America

text: Virgin America's founder Richard Branson expressed disappointment with the merger between Alaska Airlines and the airline he founded. In July 2016, Virgin America's shareholders approved the merger, leaving the approval by the United States Department of Justice as the only foreseeable hurdle. In September 2016, a lawsuit was filed against Alaska Airlines by consumers to block the merger between the two carriers, which the Alaska Air Group settled in court in December 2016. Subsequently, the Department of Justice approved the merger, which was completed on December 14. Following the acquisition, the former chief financial officer of Alaska Airlines, Peter Hunt, became the president of Virgin America, while the former chief operating officer and president of Alaska Airlines, Ben Minicucci, became the chief executive officer.


title: Virgin America

text: Virgin America became the launch customer for the Airbus A321neo, with the airline placing a firm order for 10 aircraft through leasing company GE Capital Aviation Services. The first A321neo was delivered in Hamburg to Virgin America and entered service on May 31, 2017; a total of five A321neos were delivered to Virgin in 2017 and five in 2018. In early February 2017, Alaska Air Group said it was working with GE on an arrangement where it would not take delivery of all 10 ordered jets, in favor of keeping a predominantly Boeing fleet. A presentation given by Alaska Airlines' chief financial officer in March 2017 indicated that Alaska would take delivery of all 10 leased A321neos, and would absorb and operate Virgin America's existing A319 and A320 fleet through at least 2024.


title: Virgin America

text: As part of the merger, some of Virgin's amenities would be integrated into Alaska's product. As Alaska Group was licensing the Virgin brand from Virgin Group, Branson indicated a willingness to relaunch the airline after the Virgin America brand was retired.


title: Virgin America

text: Virgin America made its final revenue flight under its callsign "Redwood" on January 10, 2018. The next day, on January 11, 2018, the Federal Aviation Administration issued a single operating certificate for a combined Alaska Airlines and Virgin America.


title: Virgin America

text: Virgin America flights continued to operate using Virgin America aircraft, crew, and brand name until April 25, 2018, when the airlines merged into the same passenger service system. The final Virgin America revenue departure was Flight 1948 at 9:32 PM, traveling from the airline's San Francisco headquarters to its other hub in Los Angeles, while the true final Virgin America departure was an employee charter operating as Flight 1947 from Los Angeles to San Francisco, which departed at 9:35 PM and operated under Virgin America's original "Redwood" callsign. Overnight, the customer-facing portions of the company (including flight numbers, website, and airport check-in kiosks) were converted to use the Alaska Airlines brand.


title: Virgin America

text: From April 25, 2018, passengers could only see the Alaska Airlines brand online and in airports, and "virginamerica.com" would redirect to "alaskaair.com". Prior to the brand cutover, livery repainting of Virgin America's Airbus aircraft began in January 2018. Additionally, the interiors of the Airbus aircraft underwent refitting with seats similar to those in Alaska's Boeing aircraft from September 2018, in another project expected to take several months to complete, with the first aircraft refit and unveiled in early 2019. The last plane wearing the Virgin America livery, the one that operated Flight 1948, was repainted in Alaska Airlines livery on June 2, 2019. Following the completion of the repainting of Virgin America's aircraft, "virginamerica.com" instead redirected to Virgin Group's website "virgin.com" rather than to "alaskaair.com", and Virgin America's social media profiles, such as its Facebook, Twitter and YouTube were subsequently either merged with those of Alaska Airlines, had their accounts closed, or otherwise had their content largely removed.


title: Virgin America

text: The key trends for Virgin America over its later years were as follows (as at year ending December 31):


title: Virgin America

text: Virgin America leased of space at Bay Park Plaza II (formerly known as the Forbes Building), a building at 555 Airport Boulevard in Burlingame, California, in the San Francisco Bay Area, owned, leased, and managed by EQ Office. Virgin America occupied suite 500 in the building, which was located across a lagoon from U.S. Highway 101 (Bayshore Freeway). Some of the space has since been repurposed as an Alaska Airlines office.


title: Virgin America

text: As of April 2018, Virgin America flew to a total of 30 destinations, consisting of 27 domestic destinations and three destinations in Mexico. Its primary hub was located at San Francisco International Airport, with its secondary hub at Los Angeles International Airport. Virgin America also maintained a focus city at Dallas Love Field, and operated a route between Las Vegas and New York JFK.


title: Virgin America

text: As of January 11, 2018, at the time of the merger, Virgin America's all-Airbus fleet consisted of the following aircraft:


title: Virgin America

text: Virgin America offered dual-class service on all flights it operated. Both cabins featured mood lighting and all seats were equipped with a Panasonic Avionics in-flight entertainment system running a customized touch-screen GUI called "Red". In July 2010, the "Red" software had been upgraded to version 2.0 across the entire fleet. This update included new features such as an updated position mapping system powered by Google Maps, in-flight shopping, and open tab capabilities. The "Red" system was upgraded again in June 2015, introducing the new Android seatback touch screen service, and a new position mapping system by Flightpath 3D.


title: Virgin America

text: First Class seats offered of pitch and were wide. The seats featured power-ports, adjustable headrests, a massage function, tablet friendly tray table (with two positions), and various recline controls. Passengers seated in first class received complimentary meals, refreshments and alcoholic beverages, small amenity kit, long-haul guests received a large duvet & pillow and received dedicated airport check-in, security screening, and aircraft boarding. In first class, "Red" offered free live satellite television, free on-demand movies, free on-demand television programming and a selection of games. Guests could also utilize GoGo for limited, but free messaging on certain platforms. The front lavatory was for first class guests only.


title: Virgin America

text: Main Cabin Select was Virgin America's premium economy product. It was not a distinct class; instead, on the A319-100 and A320-200, the service was located at Main Cabin seats in the exit row and behind the bulkheads. On their A321neo, the service was located in the first three rows of the Main Cabin. Passengers were offered more conveniences than in normal Main Cabin seats and had of seat pitch, of width and dedicated luggage bins. Like in first class, meals, refreshments and alcoholic beverages were free, as were the premium television channels and movies. Airport check-in, security screening, and aircraft boarding were prioritized over Main Cabin passengers. Guests could also utilize GoGo for limited, but free messaging on certain platforms. The lavatories in the back were for all passengers flying in economy, including Main Cabin Select.


title: Virgin America

text: Main Cabin seats offered of pitch and were wide with power-ports and adjustable headrests. Following the merger with Alaska Airlines, "Red" mirrored Alaska's in-flight service by offering live satellite television, on-demand movies, on-demand television shows, and a selection of games for free. In aligning further with Alaska Airlines, all movies and content were free for all guests, regardless of cabin. Furthermore, in addition to the free beverage service, passengers could order more complimentary non-alcoholic beverages, or purchase snacks, meals, special-branded amenity kit, pillow/blanket, and alcoholic beverages from their seats via "Red". Guests could also utilize GoGo for limited, but free messaging on certain platforms.


title: Virgin America

text: Alaska Air Group had stated that as part of the reconfiguration, the Virgin America First Class seats would be removed and replaced with a different model to streamline the product with the Alaska Airlines product. The seats, while considered a downgrade from the current seats, would have only 41" of seat pitch, slightly more recline than the current Alaska Airlines 737 First Class product, retaining the Virgin America foot rests, and different placement of the powerports. The number of First Class seats would increase from 8 to 16 seats on the A321neo, and from eight to twelve seats on both the A319 and A320.


title: Virgin America

text: Alaska also reconfigured the Virgin America Airbus fleet to include at least three rows of Main Cabin Select, which was a significant change as the current configuration included the emergency exit row (or second row in Airbus A320 fleet) as part of Main Cabin Select; these seats would now just be considered preferred seats/extra legroom after integration.


title: Virgin America

text: In April 2020, in response to COVID-19 pandemic impacts, Alaska retired or indefinitely stored all aircraft that retained Virgin America interiors, and it is expected that none will fly for Alaska again.


title: Virgin America

text: Virgin America's frequent-flyer program was Elevate, which allowed passengers to earn five points for every dollar spent on a flight's base fare, which excluded taxes and other fees. The program was discontinued on January 1, 2018. Elevate members were given the option to manually convert Elevate points into Alaska Airlines' Mileage Plan miles until January 31, 2018, with any remaining Elevate points automatically converted by February 8, 2018.


title: Virgin America

text: Following the discontinuation of Elevate in January 2018, flights operated by Virgin America continued to earn credit on Alaska Airlines' Mileage Plan and the frequent flyer programs of partner airlines (including Hawaiian Airlines‘ HawaiianMiles, Emirates Skywards, Singapore Airlines’ KrisFlyer, or Virgin Australia's Velocity Frequent Flyer) until Virgin America was integrated into Alaska Airlines on April 25, 2018.


The Legend of Zelda: A Link to the Past and Four Swords is a compilation of two action-adventure games co-developed by Nintendo EAD and Capcom and published by Nintendo for the Game Boy Advance. The game was released in December 2002 in North America and in March 2003 in Japan and Europe. The cartridge contains a modified port of "", originally released for the Super Nintendo Entertainment System in 1991, and an original multiplayer-only game titled "Four Swords", which serves as the 9th installment in "The Legend of Zelda" series.


title: The Legend of Zelda: A Link to the Past and Four Swords

text: A stand-alone port of "Four Swords" was released for a limited time on Nintendo's DSiWare service as The Legend of Zelda: Four Swords Anniversary Edition on September 28, 2011, which includes new content, such as a single-player mode and additional areas. It was re-released on the Nintendo 3DS eShop for a limited time from January 31 to February 2, 2014, in celebration of their then latest released game, "".


text: "Four Swords" is the multiplayer portion of the cartridge. "Four Swords" features gameplay similar to "A Link to the Past", with a focus on multiplayer; in it, two to four players must cooperatively work through a series of puzzle-laden dungeons, while competing to collect rupees. The player with the most rupees at the end of a level wins a special prize, though all rupees are shared together in the long run. All players are given respective colors – player one is green, player two is red, player three is blue, and player four is purple. Once all players are connected, player one chooses one of the four stages available to play on. All dungeons are randomized before play. The dungeons have three levels to them, with a portal at the end of each level; the first to reach it will be rewarded with a Heart Container, an item that increases the player's health meter. The third level is not a traditional dungeon, but rather a boss battle. Once defeated, they will return to the hub area.


text: Unlike in "A Link to the Past" where Link has an inventory of items he has collected, "Four Swords" only allows a player to have one item at any given time, switching them out at item pedestals. An original item called the Gnat Hat appears, causing Link to shrink and be able to access areas he could not normally reach. This idea was expanded on in the form of a talking hat named Ezlo in a later game, "". Creating a file for the Game Boy Advance game will give players a profile in both "A Link to the Past" and "Four Swords". Some features are linked between the two games. For example, when players learn a new sword move, it is transferred between games. When both games are completed, players may access a dungeon called "Palace of the Four Sword" in "A Link to the Past".


text: The plot of "A Link to the Past" is the same as the original Super NES version, in which the player assumes the role of Link as he journeys to save Hyrule, defeat the wizard Agahnim and the demon king Ganon, and claim the Triforce to rescue Princess Zelda and the descendants of the Seven Sages.


text: Taking place before the events of "", the prologue shows Link and Zelda approaching a sword in a pedestal, called the Four Sword. After Zelda explains its history and the creature sealed within it, the creature named Vaati breaks free, capturing Zelda to marry her. Link is encountered by three fairies who instruct Link to pull the Four Sword out. Link pulls the Four Sword out, inadvertently creating three copies of himself that fight alongside him. As the game begins, the four Links are tasked with finding three Great Fairies, who together will grant them access to Vaati's palace. After finding the three Great Fairies and entering the palace the Links battle Vaati. After Vaati is thoroughly weakened, he is trapped in the Four Sword. Zelda and Link return the Four Sword back in its pedestal.


text: "The Legend of Zelda: A Link to the Past & Four Swords" was a collaborative development effort between Nintendo and Capcom, the process supervised by Minoru Narita, Yoichi Yamada, Takashi Tezuka and Yoshikazu Yamashita from Nintendo Entertainment Analysis and Development. The "A Link to the Past" portion re-used the art assets from the Super NES version. Alterations include tweaks to item locations to prevent exploiting the game, a reduction of the viewable playing area, and the inclusion of voice samples from "". Capcom had begun development of "" in 2001, but temporarily suspended it to free up resources for the "Four Swords" multiplayer component. The company designed the multiplayer portion to force cooperation between players in order to progress. The developers designed the levels to adjust the puzzles to the number of players participating; if two or four players are connected, then a puzzle will require two and four characters, respectively, to complete it. "Four Swords" differs graphically from the other portion and features a style similar to "", which was released around the same time. Though "Four Swords" was not initially planned as the first title in a subseries, the story, intended to be the earliest in the series' chronology at the time of its release, was already considered to influence future games.


text: The game was first revealed at E3 2002 by series developer Shigeru Miyamoto, who demonstrated the multiplayer mode along with Capcom's Yoshiki Okamoto, Namco Bandai's (formerly Namco) Kaneto Shiozawa, and Toshihiro Nagoshi of the now defunct Amusement Vision. It was tentatively titled "The Legend of Zelda GBA". In January 2003, the game was displayed at the Osaka World Hobby Convention as "The Legend of Zelda: A Link to the Past & Four Swords". It was initially released in North America on December 2, 2002, while it was released the next year in Japan and Europe, on March 14 and 28 respectively. Shigeru Miyamoto made a public appearance in Europe in February 2003, in which he signed Nintendo products and gave away ten signed copies of "A Link to the Past & Four Swords" a month before it came out in the UK. Following the Japanese release, Nintendo displayed the game at TV Kumamoto's , an annual event hosted by the Japanese TV station in Kumamoto Prefecture. In 2006, it was re-released in Nintendo's second run of Player's Choice titles at a reduced price.


text: Nintendo World Report's Max Lake called the announcement of a multiplayer mode "exciting". In "IGN"s Best of E3 awards for the Game Boy Advance, they named it the runner-up to Best of Show below "Metroid Fusion", calling it a "close one", but ultimately gave the award to "Fusion" due to it not being a remake. They described the multiplayer component as resembling "Diablo" or "Gauntlet". They gave it the award for Biggest Surprise, citing its multiplayer mode, calling it a "brilliant addition" and "well worth the price of four "Legend of Zelda" cartridges". "IGN"s Craig Harris, in his preview of the game, called the port of "A Link to the Past" "faithful". Although he noted that the controls would have to be modified due to the GBA's lack of two buttons that were both used in the Super NES version, he found the new controls to be adequate and praised the visuals for holding up well. "IGN" reported that based on their then new wishlist tool, "A Link to the Past & Four Swords" was consistently the second most anticipated Game Boy Advance game for the five weeks before its release.


text: Since its release, "The Legend of Zelda: A Link to the Past & Four Swords" has been met with highly positive reception. It holds an aggregate score of 91.70% and 95 at GameRankings and Metacritic respectively, indicating "universal acclaim". It is the highest rated Game Boy Advance game on the sites. The game was a top seller in Japan following its release. It was the second highest title in number of sales the week of its release, and was number six the following week with 0.04 million units. It sold 1.63 million copies in North America , and 0.29 million in Japan . "GamePro"s Star Dingo called it a "masterpiece", as well as an "important part of the Grand Renaissance of the Second Dimension". He praised the overworld for its secrets and "quirky random characters", adding that playing it required patience and exploring. G4TV praised it for being good for anyone anticipating "". "IGN"s Craig Harris praised the game, giving the gameplay and lasting appeal perfect scores. They praised both modes' puzzle designs, calling the Super NES game the best 2D video game ever, while praising the replay value for offering unlockables to keep players playing.


text: "IGN" included it in their Game Boy Advance Holiday Buyers Guide for 2002, calling its inclusion of multiplayer a "big deal" and that it was the most requested Super NES port for the Game Boy Advance. IGN named it the third best Game Boy Advance game, praising the Game Boy Advance for handling the game so well, and citing the multiplayer component for making the game "truly awesome". They included it on their list of most-wanted Nintendo DSi Virtual Console games, a hypothetical service that in "IGN"s view would offer handheld games similar to the Wii's Virtual Console. They once again praised the multiplayer mode, questioning why Nintendo has yet to make a follow-up game on the Nintendo DS or DSiWare. Eurogamer's Tom Bramwell praised it, commenting that the port held up over the years, calling it "amazingly deep" and a "gateway drug into the genre". In reviewing the multiplayer component, he commented that while it was not as good as "A Link to the Past", it was still remarkable, but he found fault in the difficulty of finding three other players with Game Boy Advances and copies of the game to play it with.