Knowledge

Namespace

Source đź“ť

2445: 2002: 1213:(i.e. names). An identifier defined in a namespace is associated only with that namespace. The same identifier can be independently defined in multiple namespaces. That is, an identifier defined in one namespace may or may not have the same meaning as the same identifier defined in another namespace. Languages that support namespaces specify the rules that determine to which namespace an identifier (not its definition) belongs. 2016:, namespaces are defined by the individual modules, and since modules can be contained in hierarchical packages, then namespaces are hierarchical too. In general when a module is imported then the names defined in the module are defined via that module's namespace, and are accessed in from the calling modules by using the fully qualified name. 1217:
Bill works for company X and Jane works for company Y, then it is not a problem for each of them to be employee #123. In this analogy, the ID number is the identifier, and the company serves as the namespace. It does not cause problems for the same identifier to identify a different person in each namespace.
64:
where each person has a given name, as well as a family name shared with their relatives. If the first names of family members are unique only within each family, then each person can be uniquely identified by the combination of first name and family name; there is only one Jane Doe, though there may
2137:
which imports all names defined in the named package directly in the calling module's namespace. Use of this form of import, although supported within the language, is generally discouraged as it pollutes the namespace of the calling module and will cause already defined names to be overwritten in
1216:
This concept can be illustrated with an analogy. Imagine that two companies, X and Y, each assign ID numbers to their employees. X should not have two employees with the same ID number, and likewise for Y; but it is not a problem for the same ID number to be used at both companies. For example, if
2203:, the XML namespace specification enables the names of elements and attributes in an XML document to be unique, similar to the role of namespaces in programming languages. Using XML namespaces, XML documents may contain element or attribute names from more than one XML vocabulary. 2725:
What are namespaces? In the broadest definition, namespaces are a way of encapsulating items. This can be seen as an abstract concept in many places. For example, in any operating system directories serve to group related files, and act as a namespace for the files within
647:
Delegation of responsibilities between parties is important in real-world applications, such as the structure of the World Wide Web. Namespaces allow delegation of identifier assignment to multiple name issuing organisations whilst retaining global uniqueness. A central
1847:
Namespaces are heavily used in C# language. All .NET Framework classes are organized in namespaces, to be used more clearly and to avoid chaos. Furthermore, custom namespaces are extensively used by programmers, both to organize their work and to avoid
1242:
support namespaces. Storage devices use directories (or folders) as namespaces. This allows two files with the same name to be stored on the device so long as they are stored in different directories. In some programming languages (e.g.
2517:
In languages with restricted identifier length, the use of prefixes limits the number of characters that can be used to identify what the function does. This is a particular problem for packages originally written in
857:
in computer science) to a name, and the terms are sometimes used interchangeably. However, the context of a name may also be provided by other factors, such as the location where it occurs or the syntax of the name.
987:
As well as its abstract language technical usage as described above, some languages have a specific keyword used for explicit namespace control, amongst other uses. Below is an example of a namespace in C++:
656:. Each namespace name is allocated to an organisation which is subsequently responsible for the assignment of names in their allocated namespace. This organisation may be a name issuing organisation that 2530:
function indicates that it operates on double-precision numbers ("D") and general matrices ("GE"), and only the last two characters show what it actually does: matrix-matrix multiplication (the "MM").
2700:
A namespace is nothing but a group of assemblies, classes, or types. A namespace acts as a container—like a disk folder—for classes organized into groups usually based on functionality. C# namespace
1753:. All code belongs to a package, although that package need not be explicitly named. Code from other packages is accessed by prefixing the package name before the appropriate identifier, for example 1783:
Unlike C++, namespaces in Java are not hierarchical as far as the syntax of the language is concerned. However, packages are named in a hierarchical manner. For example, all packages beginning with
2759:, and annotation types. Enumerations and annotation types are special kinds of classes and interfaces, respectively, so types are often referred to in this lesson simply as classes and interfaces. 65:
be many Janes. Within the namespace of the Doe family, just "Jane" suffices to unambiguously designate this person, while within the "global" namespace of all people, the full name must be used.
1721:. Although namespaces are used extensively in recent C++ code, most older code does not use this facility because it did not exist in early versions of the language. For example, the entire 1733:
directive to bypass namespace resolution requirements and obtain backwards compatibility with older code that expects all identifiers to be in the global namespace. However the use of the
2925:
For instance, , to access the built-in input-output (I/O) classes and members, use the System.IO namespace. Or, to access Web-related classes and members, use the System.Web namespace.
2078:
statement can be used to insert the relevant names directly into the calling module's namespace, and those names can be accessed from the calling module without the qualified name:
1228:) provide a mechanism for hiding local identifiers. They provide a means of grouping logically related identifiers into corresponding namespaces, thereby making the system more 924:
As a rule, names in a namespace cannot have more than one meaning; that is, different meanings cannot share the same name in the same namespace. A namespace is also called a
53:) that are used to identify and refer to objects of various kinds. A namespace ensures that all of a given set of objects have unique names so that they can be easily 2650:
Adya, Atul; Bolosky, William; Castro, Miguel; Cermak, Gerald; Chaiken, Ronnie; Douceur, John; Howell, Jon; Lorch, Jacob; Theimer, Marvin; Wattenhofer, Roger (2002).
2684: 1609:
Within this block, identifiers can be used exactly as they are declared. Outside of this block, the namespace specifier must be prefixed. For example, outside of
1251:), the identifiers naming namespaces are themselves associated with an enclosing namespace. Thus, in these languages namespaces can nest, forming a namespace 3053: 123:
organize files in directories. Each directory is a separate namespace, so that the directories "letters" and "invoices" may both contain a file "to_jane".
2514:
Compound or "query-based" operations on groups of identifiers, based on the namespaces in which they are declared, are rendered unwieldy or unfeasible.
3039: 253:
The following XML distinguishes between information about the HTML table and furniture by prefixing "h" and "f" at the beginning of the elements.
2651: 2905: 2444: 157:
Element names are defined by the developer. This often results in a conflict when trying to mix XML documents from different XML applications.
679:
A hierarchy is recursive if the syntax for the namespace names is the same for each subdelegation. An example of a recursive hierarchy is the
921:. In an operating system, an example of namespace is a directory. Each name in a directory uniquely identifies one file or subdirectory. 2467:
often use a fixed prefix for all functions and variables that are part of their exposed interface. Libpng exposes identifiers such as:
130:, namespaces are typically employed for the purpose of grouping symbols and identifiers around a particular functionality and to avoid 2001: 1799: 822: 60:
Namespaces are commonly structured as hierarchies to allow reuse of names in different contexts. As an analogy, consider a system of
2672:
The primary construct established by a file system is a hierarchical directory namespace, which is the logical repository for files.
970:, identifiers that appear in namespaces have a short (local) name and a unique long "qualified" name for use outside the namespace. 1852:. When referencing a class, one should specify either its fully qualified name, which means namespace followed by the class name, 362: 2602: 1663:
These identifiers can be used exactly as they are declared, or, since the global namespace is unnamed, the namespace specifier
1793: 1737:
directive for reasons other than backwards compatibility (e.g., convenience) is considered to be against good code practices.
2747:
A package is a grouping of related types providing access protection and name space management. Note that types refers to
2504:
It doesn't scale well to nested namespaces; identifiers become excessively long since all uses of the identifiers must be
755: 730: 691: 2455:
In programming languages lacking language support for namespaces, namespaces can be emulated to some extent by using an
2607: 798: 775: 578: 928:, because the same name in different namespaces can have different meanings, each one appropriate for its namespace. 832: 605: 2511:
Individuals or organizations may use inconsistent naming conventions, potentially introducing unwanted obfuscation.
2474: 1729:, but before standardization many components were originally in the global namespace. A programmer can insert the 2868: 2807: 2616: 918: 1224:
or documents it is common to have hundreds or thousands of identifiers. Namespaces (or a similar technique, see
318:
A name in a namespace consists of a namespace name and a local name. The namespace name is usually applied as a
2701: 2631: 2621: 1811: 326: 1647:
Identifiers that are not explicitly declared within a namespace are considered to be in the global namespace.
3005: 2013: 1777: 1248: 899: 887: 2130:
Since this directly imports names (without qualification) it can overwrite existing names with no warnings.
2748: 2582: 2456: 3072: 1746: 1621:
to be accessed. C++ includes another construct that makes this verbosity unnecessary. By adding the line
967: 77: 2738: 1822:). How specific these categories are and how deep the hierarchies go differ from language to language. 1807: 882: 653: 17: 2664: 1835:
can be viewed as implicit namespaces that are inextricably linked with visibility, accessibility, and
483: 2913: 2587: 815: 804: 791: 743: 553: 319: 109: 1920:
statement. This, eliminates the need to mention the complete name of all classes in that namespace.
2538:
No special software tools are required to locate names in source-code files. A simple program like
2460: 1829: 1273: 1229: 854: 2215:
from version 5.3 onwards. Naming collision of classes, functions and variables can be avoided. In
113: 1825: 1722: 1678:
Namespace resolution in C++ is hierarchical. This means that within the hypothetical namespace
661: 649: 146: 2688: 365:
is used to decide which (if any) particular name is alluded to by some particular local name.
2752: 2716: 2577: 2567: 2083:# assume Modulea defines two functions : func1() and func2() and one class : Class1 2021:# assume modulea defines two functions : func1() and func2() and one class : Class1 1252: 948: 750: 724: 702:, an identifier for the book The Logic of Scientific Discovery by Karl Popper, 10th edition. 687: 515: 120: 2497:) reserve the first few letters of a function's name to indicate which group it belongs to. 1814:, and others), namespaces/packages express semantic categories of code. For example, in C#, 2882: 2821: 2653:
FARSITE: Federated, Available, and Reliable Storage for an Incompletely Trusted Environment
2505: 1769: 1239: 960: 944: 235:
If these XML fragments were added together, there would be a name conflict. Both contain a
127: 73: 2858: 2797: 8: 1832: 1772:). Like C++, Java offers a construct that makes it unnecessary to type the package name ( 1235: 925: 97: 28: 862:
Examples of naming systems with local and global scope, and with and without namespaces
2592: 1205:) is an abstract container or environment created to hold a logical grouping of unique 904: 142: 89: 3047: 2959:"Namespaces allow to group entities like classes, objects and functions under a name" 657: 198: 2958: 977:) combine namespaces and names for internal use in the compiler in a process called 2872: 2811: 2548:
There is no need for name-mangling, and thus no potential incompatibility problems.
2482: 1849: 1718: 1221: 940: 760: 735: 699: 393: 138: 105: 85: 32: 3025: 2145:
as a way of providing an alias or alternative name for use by the calling module:
3028:"in general the practice of importing * from a module or package is frowned upon" 2937: 2756: 1836: 2979: 2885: 2862: 2824: 2801: 999:// This is how one brings a name into the current scope. In this case, it's 2612: 2559: 2522:, which offered only 6 characters per identifier. For example, the name of the 1819: 131: 672:
A naming scheme that allows subdelegation of namespaces to third parties is a
521: 3066: 2626: 2194: 2125:# this will fail as an undefined name, as will the full name Modulea.Class1() 1788: 979: 664:
which further delegates parts of their namespace to different organisations.
537: 457: 2110:# this will fail as an undefined name, as will the full name Modulea.func2() 1750: 840: 499: 61: 2938:"A namespace is "a logical grouping of the names used within a program."" 2597: 680: 569: 409: 69: 2478: 2470:
png_create_write_struct png_get_signature png_read_row png_set_invalid
1206: 629:
dbr (previously declared ontology, e.g. by specifying @prefix dbr: <
161: 81: 54: 2772: 2877: 2816: 1760: 956: 768: 441: 42: 2663:
Symp. on Operating Systems Design and Implementation. Archived from
2316:
We can reference a PHP namespace with the following different ways:
2844: 2562: 93: 2571: 2519: 2486: 952: 936: 917:
For many programming languages, namespace is a context for their
250:
Name conflicts in XML can easily be avoided using a name prefix.
101: 2481:
are unique and can therefore be used in larger programs without
526: 2660: 2494: 2464: 1210: 630: 621: 589: 472: 463: 239:
element, but the elements have different content and meaning.
2336:# Option 1: directly prefix the class name with the namespace 1578: 1244: 974: 827: 769:
International Standard Book Numbers as Uniform Resource Names
242:
An XML parser will not know how to handle these differences.
2539: 2523: 2490: 1803:
contains core classes specifically relating to reflection.
112:
resources by isolated namespaces to support virtualization
1780:) require the programmer to use the fully qualified name. 2216: 2212: 2200: 1277: 1272:
It is possible to use anonymous structs as namespaces in
1201:
A namespace in computer science (sometimes also called a
780: 935:
Names in the namespace can represent objects as well as
2649: 134:
between multiple identifiers that share the same name.
2856: 2770: 2414:# Access the properties and methods with regular way 931:Following are other characteristics of namespaces: 2864:Functional Requirements for Uniform Resource Names 1196: 2219:, a namespace is defined with a namespace block. 1581:, a namespace is defined with a namespace block. 3064: 3052:: CS1 maint: bot: original URL status unknown ( 2485:. Likewise, many packages originally written in 471:xhtml (previously declared XML namespace xhtml=" 3026:https://docs.python.org/3/tutorial/modules.html 1717:Namespaces in C++ are most often used to avoid 145:organizes websites (and other resources) into 2381:# Option 2a: import & alias the namespace 686:An example of a non-recursive hierarchy are 425: 27:For the use of namespaces in Knowledge, see 3042:. Archived from the original on 2016-07-09. 1797:contains classes core to the language, and 912: 2859:"Requirements for functional capabilities" 2771:XML Core Working Group (8 December 2009). 1818:contains code provided by the system (the 1262: 1255:. At the root of this tree is the unnamed 68:Prominent examples for namespaces include 2876: 2815: 1749:, the idea of a namespace is embodied in 1714:, an identifier in the global namespace. 1225: 848: 361:When local names are used by themselves, 31:. For a feature of the Linux kernel, see 2857:Sollins & Masinter (December 1994). 2302:'Hello world, from function bar' 2269:'Hello world, from function foo' 3037: 2773:"Namespaces in XML 1.0 (Third Edition)" 2477:provides reasonable assurance that the 2450: 14: 3065: 2603:Identity (object-oriented programming) 2545:There are no namespace name conflicts. 2500:This technique has several drawbacks: 1776:). However, certain features (such as 973:Some compilers (for languages such as 853:A namespace name may provide context ( 245: 2795: 959:, or an artificial language (e.g., a 698:Hierarchical namespace breakdown for 197:This XML carries information about a 72:, which assign names to files. Some 2133:A special form of the statement is 1002:// bringing them into global scope. 756:Internet Assigned Numbers Authority 731:Internet Assigned Numbers Authority 692:Internet Assigned Numbers Authority 92:assign names to resources, such as 24: 2717:"An overview of namespaces in PHP" 2608:Library of Congress Classification 799:International Standard Book Number 776:International Article Number (EAN) 654:assigned namespace names allocated 579:organizationally unique identifier 237:<table>...</table> 38:Container for a set of identifiers 25: 3084: 1694:doesn't exist, it then refers to 374:Examples of names in a namespace 152: 2443: 2354:# Option 2: import the namespace 2211:Namespaces were introduced into 2188: 2000: 313: 3031: 3019: 2998: 2972: 2951: 2930: 2871:. p. 3. sec. 2. 2810:. p. 1. sec. 2. 2704:allows namespaces to be nested. 2687:. C# Online Net. Archived from 2617:astronomical naming conventions 1640:to a piece of code, the prefix 1197:Computer-science considerations 529:(National Bibliography Numbers) 3006:"Python Scopes and Namespaces" 2940:. Webopedia.com. 10 April 2002 2898: 2850: 2837: 2789: 2764: 2731: 2709: 2677: 2643: 2632:Argument-dependent name lookup 2622:Violation of abstraction level 2534:There are several advantages: 2330:"phpstar/foobar.php" 1667:can be prefixed. For example, 828:Agentur fĂĽr Buchmarktstandards 13: 1: 2906:"C# FAQ: What is a namespace" 2739:"Creating and Using Packages" 2685:"C# FAQ: What is a namespace" 2637: 900:Universally unique identifier 888:Filesystem Hierarchy Standard 642: 548:1000/182 (handle local name) 201:(i.e. a piece of furniture): 2986:. Python Software Foundation 2583:Dewey Decimal Classification 2457:identifier naming convention 667: 631:http://dbpedia.org/resource/ 545:10 (handle naming authority) 473:http://www.w3.org/1999/xhtml 464:http://www.w3.org/1999/xhtml 7: 2552: 1993:are classes defined within 368: 10: 3089: 2192: 2138:the case of name clashes. 1770:fully qualified class name 941:natural or ethnic language 883:Vehicle registration plate 761:urn:isbn:978-3-16-148410-0 736:urn:isbn:978-3-16-148410-0 700:urn:isbn:978-3-16-148410-0 507:java.util (Java namespace) 327:augmented Backus–Naur form 26: 2588:Digital object identifier 2506:fully namespace-qualified 2224:# File phpstar/foobar.php 2007: 968:Java programming language 816:German-speaking countries 805:International ISBN Agency 554:Digital object identifier 449:US (country or territory) 417:example.com (domain name) 121:hierarchical file systems 2796:Moats, Ryan (May 1997). 2318: 2221: 2147: 2080: 2018: 1946:"Hello World!" 1922: 1875:"Hello World!" 1854: 1649: 1623: 1583: 1282: 990: 913:In programming languages 584:67-89-ab (NIC specific) 331: 255: 203: 166: 3040:"Why I Hate Namespaces" 1981:In the above examples, 1740: 1263:Use in common languages 660:themselves, or another 420:www (leaf domain name) 404:readme.txt (file name) 147:hierarchical namespaces 2206: 1768:(this is known as the 1764:can be referred to as 1572: 849:Namespace versus scope 674:hierarchical namespace 662:Registration authority 650:Registration authority 401:/home/user (directory) 2578:Chemical nomenclature 2568:Binomial nomenclature 2141:Python also supports 1842: 1644:is no longer needed. 1240:programming languages 949:technical terminology 939:, be the namespace a 823:German publisher code 725:Uniform Resource Name 688:Uniform Resource Name 522:urn:nbn:fi-fe19991055 516:Uniform Resource Name 398:/home/user/readme.txt 74:programming languages 2451:Emulating namespaces 1985:is a namespace, and 1723:C++ Standard Library 1671:can also be written 1483:"helper.h" 1267: 1236:Data storage devices 1226:Emulating namespaces 961:programming language 945:constructed language 751:Formal URN namespace 744:Formal URN namespace 128:computer programming 104:, and remote files. 2984:The Python Tutorial 2916:on October 20, 2013 2076:from ... import ... 1700:food::soup::chicken 1692:food::soup::chicken 1688:food::soup::chicken 951:of a profession, a 869:Without a namespace 863: 703: 561:10.1000 (publisher) 491:$ DBI (Perl module) 433:std (C++ namespace) 375: 322:to the local name. 289:MahoganyCoffeeTable 246:Solution via prefix 211:MahoganyCoffeeTable 90:distributed systems 49:is a set of signs ( 29:Knowledge:Namespace 3073:Naming conventions 2845:"List of USB ID's" 2843:Stephen J. Gowdy. 2743:Java Documentation 2593:Domain Name System 2570:(genus-species in 2463:libraries such as 2324:# Include the file 1787:are a part of the 1725:is defined within 905:Domain Name System 861: 713:Example Identifier 697: 681:Domain name system 616:003f (product ID) 564:182 (publication) 494:errstr (variable) 468:<xhtml:body> 373: 143:Domain Name System 3008:. Docs.python.org 2483:naming collisions 2475:naming convention 2135:from ... import * 1850:naming collisions 1800:java.lang.reflect 1719:naming collisions 1682:, the identifier 1222:computer programs 910: 909: 872:With a namespace 846: 845: 785:978-3-16-148410-0 640: 639: 600:abcd (device ID) 574:01-23-45-67-89-ab 305:</f:length> 160:This XML carries 106:Operating systems 86:Computer networks 16:(Redirected from 3080: 3058: 3057: 3051: 3043: 3035: 3029: 3023: 3017: 3016: 3014: 3013: 3002: 2996: 2995: 2993: 2991: 2976: 2970: 2969: 2967: 2966: 2955: 2949: 2948: 2946: 2945: 2934: 2928: 2927: 2922: 2921: 2912:. Archived from 2902: 2896: 2895: 2893: 2892: 2880: 2878:10.17487/RFC1731 2854: 2848: 2841: 2835: 2834: 2832: 2831: 2819: 2817:10.17487/RFC2141 2793: 2787: 2786: 2784: 2783: 2768: 2762: 2761: 2735: 2729: 2728: 2713: 2707: 2706: 2697: 2696: 2681: 2675: 2674: 2669: 2658: 2647: 2529: 2447: 2439: 2436: 2433: 2430: 2427: 2424: 2421: 2418: 2415: 2412: 2409: 2406: 2403: 2400: 2397: 2394: 2391: 2388: 2385: 2382: 2379: 2376: 2373: 2370: 2367: 2364: 2361: 2358: 2355: 2352: 2349: 2346: 2343: 2340: 2337: 2334: 2331: 2328: 2325: 2322: 2321:# File index.php 2312: 2309: 2306: 2303: 2300: 2297: 2294: 2291: 2288: 2285: 2282: 2279: 2276: 2273: 2270: 2267: 2264: 2261: 2258: 2255: 2252: 2249: 2246: 2243: 2240: 2237: 2234: 2231: 2228: 2225: 2184: 2181: 2178: 2175: 2172: 2169: 2166: 2163: 2160: 2157: 2154: 2151: 2144: 2136: 2126: 2123: 2120: 2117: 2114: 2111: 2108: 2105: 2102: 2099: 2096: 2093: 2090: 2087: 2084: 2077: 2070: 2067: 2064: 2061: 2058: 2055: 2052: 2049: 2046: 2043: 2040: 2037: 2034: 2031: 2028: 2025: 2022: 2004: 1977: 1974: 1971: 1968: 1965: 1962: 1959: 1956: 1953: 1950: 1947: 1944: 1941: 1938: 1935: 1932: 1929: 1926: 1912: 1909: 1906: 1903: 1900: 1897: 1894: 1891: 1888: 1885: 1882: 1879: 1876: 1873: 1870: 1867: 1864: 1861: 1858: 1817: 1816:namespace System 1802: 1796: 1786: 1775: 1767: 1766:java.lang.String 1763: 1756: 1736: 1732: 1728: 1713: 1709: 1705: 1701: 1697: 1693: 1689: 1685: 1681: 1674: 1670: 1666: 1659: 1656: 1653: 1643: 1636: 1633: 1630: 1627: 1620: 1617:must be written 1616: 1612: 1605: 1602: 1599: 1596: 1593: 1590: 1587: 1568: 1565: 1562: 1559: 1556: 1553: 1550: 1547: 1544: 1541: 1538: 1535: 1532: 1529: 1526: 1523: 1520: 1517: 1514: 1511: 1508: 1505: 1502: 1501:"3 + 2 = %d 1499: 1496: 1493: 1490: 1487: 1484: 1481: 1478: 1475: 1472: 1469: 1466: 1463: 1460: 1457: 1454: 1451: 1448: 1445: 1442: 1439: 1436: 1433: 1430: 1427: 1424: 1421: 1418: 1415: 1412: 1409: 1406: 1403: 1400: 1397: 1394: 1391: 1388: 1385: 1382: 1379: 1376: 1373: 1370: 1367: 1364: 1361: 1358: 1355: 1352: 1349: 1346: 1343: 1340: 1337: 1334: 1331: 1328: 1325: 1322: 1319: 1316: 1313: 1310: 1307: 1304: 1301: 1298: 1295: 1292: 1289: 1286: 1257:global namespace 1238:and many modern 1192: 1189: 1186: 1183: 1180: 1177: 1174: 1171: 1168: 1165: 1162: 1159: 1156: 1153: 1150: 1147: 1144: 1141: 1138: 1135: 1132: 1129: 1126: 1123: 1120: 1117: 1114: 1111: 1108: 1105: 1102: 1099: 1096: 1093: 1090: 1087: 1084: 1081: 1078: 1075: 1072: 1069: 1066: 1063: 1060: 1057: 1054: 1051: 1048: 1045: 1042: 1039: 1036: 1033: 1030: 1027: 1024: 1021: 1018: 1015: 1012: 1009: 1006: 1003: 1000: 997: 996:<iostream> 994: 864: 860: 704: 696: 690:representing an 658:assign the names 613:2341 (vendor ID) 597:1234 (vendor ID) 376: 372: 356: 353: 349: 345: 342: 338: 335: 309: 308:</f:table> 306: 302: 301:<f:length> 299: 298:</f:width> 295: 292: 288: 285: 282: 281:</h:table> 279: 276: 272: 269: 265: 262: 259: 238: 231: 228: 224: 221: 217: 214: 210: 207: 193: 190: 187: 183: 180: 176: 173: 170: 62:naming of people 33:Linux namespaces 21: 3088: 3087: 3083: 3082: 3081: 3079: 3078: 3077: 3063: 3062: 3061: 3045: 3044: 3036: 3032: 3024: 3020: 3011: 3009: 3004: 3003: 2999: 2989: 2987: 2978: 2977: 2973: 2964: 2962: 2961:. Cplusplus.com 2957: 2956: 2952: 2943: 2941: 2936: 2935: 2931: 2919: 2917: 2904: 2903: 2899: 2890: 2888: 2855: 2851: 2842: 2838: 2829: 2827: 2794: 2790: 2781: 2779: 2769: 2765: 2737: 2736: 2732: 2715: 2714: 2710: 2694: 2692: 2683: 2682: 2678: 2670:on 2010-07-28. 2667: 2656: 2648: 2644: 2640: 2613:Star catalogues 2555: 2527: 2471: 2459:. For example, 2453: 2441: 2440: 2437: 2434: 2431: 2428: 2425: 2422: 2419: 2416: 2413: 2410: 2407: 2404: 2401: 2398: 2395: 2392: 2389: 2386: 2383: 2380: 2377: 2374: 2371: 2368: 2365: 2362: 2359: 2356: 2353: 2350: 2348:\phpstar\FooBar 2347: 2344: 2341: 2338: 2335: 2332: 2329: 2326: 2323: 2320: 2314: 2313: 2310: 2307: 2304: 2301: 2298: 2295: 2292: 2289: 2286: 2283: 2280: 2277: 2274: 2271: 2268: 2265: 2262: 2259: 2256: 2253: 2250: 2247: 2244: 2241: 2238: 2235: 2232: 2229: 2226: 2223: 2209: 2197: 2191: 2186: 2185: 2182: 2179: 2176: 2173: 2170: 2167: 2164: 2161: 2158: 2155: 2152: 2149: 2142: 2134: 2128: 2127: 2124: 2121: 2118: 2115: 2112: 2109: 2106: 2103: 2100: 2097: 2094: 2091: 2088: 2085: 2082: 2075: 2072: 2071: 2068: 2065: 2062: 2059: 2056: 2053: 2050: 2047: 2044: 2041: 2038: 2035: 2032: 2029: 2026: 2023: 2020: 2010: 1979: 1978: 1975: 1973:"123" 1972: 1969: 1966: 1963: 1960: 1957: 1954: 1951: 1948: 1945: 1942: 1939: 1936: 1933: 1930: 1927: 1924: 1914: 1913: 1910: 1908:"123" 1907: 1904: 1901: 1898: 1895: 1892: 1889: 1886: 1883: 1880: 1877: 1874: 1871: 1868: 1865: 1862: 1859: 1856: 1845: 1837:object lifetime 1815: 1798: 1792: 1784: 1773: 1765: 1758: 1754: 1743: 1734: 1730: 1726: 1711: 1707: 1703: 1699: 1695: 1691: 1687: 1683: 1679: 1672: 1668: 1664: 1661: 1660: 1657: 1654: 1651: 1641: 1638: 1637: 1634: 1631: 1628: 1625: 1618: 1614: 1610: 1607: 1606: 1603: 1600: 1597: 1594: 1591: 1588: 1585: 1575: 1570: 1569: 1566: 1563: 1560: 1557: 1554: 1551: 1548: 1545: 1542: 1539: 1536: 1533: 1530: 1527: 1524: 1521: 1518: 1515: 1512: 1509: 1506: 1503: 1500: 1497: 1494: 1491: 1488: 1485: 1482: 1479: 1477:<stdio.h> 1476: 1473: 1470: 1467: 1464: 1461: 1458: 1455: 1452: 1449: 1446: 1443: 1440: 1437: 1434: 1431: 1428: 1425: 1422: 1419: 1416: 1413: 1410: 1407: 1404: 1401: 1398: 1395: 1392: 1389: 1386: 1383: 1380: 1377: 1374: 1371: 1368: 1365: 1362: 1359: 1356: 1353: 1350: 1347: 1344: 1341: 1338: 1335: 1332: 1329: 1326: 1323: 1320: 1317: 1314: 1311: 1308: 1305: 1302: 1299: 1296: 1293: 1290: 1287: 1284: 1270: 1265: 1199: 1194: 1193: 1190: 1187: 1184: 1181: 1178: 1175: 1172: 1169: 1166: 1163: 1160: 1157: 1154: 1151: 1148: 1145: 1142: 1139: 1136: 1133: 1130: 1127: 1124: 1121: 1118: 1115: 1112: 1109: 1106: 1103: 1100: 1097: 1094: 1091: 1088: 1085: 1082: 1079: 1076: 1073: 1070: 1067: 1064: 1061: 1058: 1055: 1052: 1049: 1046: 1043: 1040: 1037: 1034: 1031: 1028: 1025: 1022: 1019: 1016: 1013: 1010: 1007: 1004: 1001: 998: 995: 992: 915: 851: 694:(IANA) number. 670: 645: 478:body (element) 467: 452:NYC (locality) 436:array (struct) 414:www.example.com 371: 363:name resolution 359: 358: 354: 351: 347: 343: 340: 336: 333: 316: 311: 310: 307: 304: 300: 297: 294:<f:width> 293: 291:</f:name> 290: 286: 284:<f:table> 283: 280: 277: 274: 270: 267: 263: 260: 258:<h:table> 257: 248: 236: 233: 232: 229: 227:</length> 226: 222: 219: 215: 212: 208: 205: 195: 194: 191: 188: 185: 181: 178: 174: 171: 168: 155: 132:name collisions 84:in namespaces. 76:organize their 39: 36: 23: 22: 15: 12: 11: 5: 3086: 3076: 3075: 3060: 3059: 3030: 3018: 2997: 2971: 2950: 2929: 2897: 2849: 2836: 2788: 2763: 2730: 2708: 2676: 2641: 2639: 2636: 2635: 2634: 2629: 2624: 2619: 2610: 2605: 2600: 2595: 2590: 2585: 2580: 2575: 2565: 2560:delivery point 2554: 2551: 2550: 2549: 2546: 2543: 2532: 2531: 2515: 2512: 2509: 2469: 2452: 2449: 2387:phpstar\FooBar 2360:phpstar\FooBar 2319: 2222: 2208: 2205: 2193:Main article: 2190: 2187: 2148: 2081: 2019: 2009: 2006: 1923: 1855: 1844: 1841: 1820:.NET Framework 1742: 1739: 1650: 1624: 1584: 1574: 1571: 1543:"pi is %f 1283: 1269: 1266: 1264: 1261: 1198: 1195: 1188:// Outputs 42. 1167:// Outputs 12. 991: 985: 984: 971: 964: 914: 911: 908: 907: 902: 897: 891: 890: 885: 880: 874: 873: 870: 867: 850: 847: 844: 843: 838: 835: 830: 825: 819: 818: 813: 810: 807: 802: 795: 794: 789: 786: 783: 778: 772: 771: 766: 763: 758: 753: 747: 746: 741: 738: 733: 728: 721: 720: 717: 716:Namespace name 714: 711: 708: 669: 666: 652:registers the 644: 641: 638: 637: 634: 627: 624: 618: 617: 614: 611: 608: 602: 601: 598: 595: 592: 586: 585: 582: 575: 572: 566: 565: 562: 559: 556: 550: 549: 546: 543: 540: 534: 533: 532:fi-fe19991055 530: 524: 519: 512: 511: 508: 505: 504:java.util.Date 502: 496: 495: 492: 489: 486: 480: 479: 476: 469: 460: 454: 453: 450: 447: 444: 438: 437: 434: 431: 428: 422: 421: 418: 415: 412: 406: 405: 402: 399: 396: 390: 389: 386: 385:Namespace name 383: 380: 370: 367: 332: 315: 312: 287:<f:name> 256: 247: 244: 230:</table> 223:<length> 220:</width> 204: 192:</table> 167: 154: 153:Name conflicts 151: 108:can partition 37: 9: 6: 4: 3: 2: 3085: 3074: 3071: 3070: 3068: 3055: 3049: 3041: 3038:Danny Kalev. 3034: 3027: 3022: 3007: 3001: 2985: 2981: 2975: 2960: 2954: 2939: 2933: 2926: 2915: 2911: 2910:C# Online Net 2907: 2901: 2887: 2884: 2879: 2874: 2870: 2866: 2865: 2860: 2853: 2846: 2840: 2826: 2823: 2818: 2813: 2809: 2805: 2804: 2799: 2792: 2778: 2774: 2767: 2760: 2758: 2754: 2750: 2744: 2740: 2734: 2727: 2722: 2718: 2712: 2705: 2703: 2691:on 2013-10-20 2690: 2686: 2680: 2673: 2666: 2662: 2655: 2654: 2646: 2642: 2633: 2630: 2628: 2627:XML namespace 2625: 2623: 2620: 2618: 2614: 2611: 2609: 2606: 2604: 2601: 2599: 2596: 2594: 2591: 2589: 2586: 2584: 2581: 2579: 2576: 2573: 2569: 2566: 2564: 2561: 2557: 2556: 2547: 2544: 2541: 2537: 2536: 2535: 2525: 2521: 2516: 2513: 2510: 2507: 2503: 2502: 2501: 2498: 2496: 2492: 2488: 2484: 2480: 2476: 2468: 2466: 2462: 2458: 2448: 2446: 2317: 2220: 2218: 2214: 2204: 2202: 2196: 2195:XML namespace 2189:XML namespace 2146: 2143:import x as y 2139: 2131: 2079: 2017: 2015: 2005: 2003: 1998: 1996: 1992: 1988: 1984: 1921: 1919: 1853: 1851: 1840: 1838: 1834: 1831: 1827: 1823: 1821: 1813: 1809: 1806:In Java (and 1804: 1801: 1795: 1791:—the package 1790: 1789:Java platform 1781: 1779: 1771: 1762: 1752: 1751:Java packages 1748: 1738: 1727:namespace std 1724: 1720: 1715: 1704:food::chicken 1698:. If neither 1696:food::chicken 1676: 1648: 1645: 1622: 1611:namespace abc 1582: 1580: 1281: 1279: 1275: 1260: 1258: 1254: 1250: 1246: 1241: 1237: 1233: 1231: 1227: 1223: 1218: 1214: 1212: 1208: 1204: 1140:// Outputs 4. 989: 982: 981: 980:name mangling 976: 972: 969: 965: 962: 958: 954: 950: 946: 942: 938: 934: 933: 932: 929: 927: 922: 920: 906: 903: 901: 898: 896: 893: 892: 889: 886: 884: 881: 879: 876: 875: 871: 868: 866: 865: 859: 856: 842: 839: 836: 834: 833:3-16-148410-X 831: 829: 826: 824: 821: 820: 817: 814: 811: 809:3-16-148410-X 808: 806: 803: 800: 797: 796: 793: 790: 787: 784: 782: 779: 777: 774: 773: 770: 767: 764: 762: 759: 757: 754: 752: 749: 748: 745: 742: 739: 737: 734: 732: 729: 726: 723: 722: 718: 715: 712: 709: 706: 705: 701: 695: 693: 689: 684: 682: 677: 675: 665: 663: 659: 655: 651: 635: 632: 628: 625: 623: 620: 619: 615: 612: 609: 607: 604: 603: 599: 596: 593: 591: 588: 587: 583: 580: 576: 573: 571: 568: 567: 563: 560: 557: 555: 552: 551: 547: 544: 541: 539: 538:Handle System 536: 535: 531: 528: 525: 523: 520: 517: 514: 513: 510:Date (class) 509: 506: 503: 501: 498: 497: 493: 490: 488:$ DBI::errstr 487: 485: 482: 481: 477: 474: 470: 465: 462:xmlns:xhtml=" 461: 459: 456: 455: 451: 448: 445: 443: 440: 439: 435: 432: 429: 427: 424: 423: 419: 416: 413: 411: 408: 407: 403: 400: 397: 395: 392: 391: 387: 384: 381: 378: 377: 366: 364: 330: 328: 323: 321: 314:Naming system 278:</h:tr> 275:</h:td> 268:</h:td> 254: 251: 243: 240: 216:<width> 213:</name> 206:<table> 202: 200: 169:<table> 165: 164:information: 163: 158: 150: 148: 144: 140: 135: 133: 129: 124: 122: 117: 115: 111: 107: 103: 99: 95: 91: 87: 83: 79: 75: 71: 66: 63: 58: 56: 52: 48: 44: 34: 30: 19: 3033: 3021: 3010:. Retrieved 3000: 2988:. Retrieved 2983: 2980:"6. Modules" 2974: 2963:. Retrieved 2953: 2942:. Retrieved 2932: 2924: 2918:. Retrieved 2914:the original 2909: 2900: 2889:. Retrieved 2863: 2852: 2839: 2828:. Retrieved 2802: 2791: 2780:. Retrieved 2776: 2766: 2757:enumerations 2746: 2742: 2733: 2724: 2720: 2711: 2699: 2693:. Retrieved 2689:the original 2679: 2671: 2665:the original 2652: 2645: 2533: 2499: 2472: 2454: 2442: 2429:$ obj_foobar 2417:$ obj_foobar 2399:$ obj_foobar 2366:$ obj_foobar 2339:$ obj_foobar 2315: 2210: 2198: 2140: 2132: 2129: 2073: 2011: 1999: 1994: 1990: 1986: 1982: 1980: 1917: 1915: 1846: 1824: 1805: 1782: 1755:class String 1744: 1716: 1677: 1662: 1646: 1639: 1608: 1576: 1271: 1256: 1234: 1219: 1215: 1202: 1200: 986: 978: 930: 923: 916: 895:Global scope 894: 877: 852: 841:Mohr Siebeck 685: 678: 673: 671: 646: 360: 324: 317: 271:<h:td> 264:<h:td> 261:<h:tr> 252: 249: 241: 234: 209:<name> 196: 159: 156: 136: 125: 118: 70:file systems 67: 59: 50: 46: 40: 2598:Fourth wall 2479:identifiers 1411:// helper.h 1285:// helper.c 1207:identifiers 919:identifiers 878:Local scope 606:USB VID/PID 570:MAC address 558:10.1000/182 542:10.1000/182 410:Domain name 388:Local name 189:</tr> 186:</td> 179:</td> 119:Similarly, 82:subroutines 3012:2011-07-26 2990:25 October 2965:2011-07-26 2944:2011-07-26 2920:2010-02-23 2891:2012-03-30 2830:2012-03-30 2803:URN Syntax 2782:2012-03-30 2753:interfaces 2745:. Oracle. 2721:PHP Manual 2695:2010-02-23 2638:References 2520:FORTRAN 77 1778:reflection 1710:refers to 1686:refers to 1680:food::soup 1203:name scope 719:Namespace 643:Delegation 626:dbr:Sydney 577:01-23-45 ( 430:std::array 182:<td> 175:<td> 172:<tr> 162:HTML table 139:networking 114:containers 55:identified 18:Namespaces 2558:11-digit 2542:suffices. 2526:function 2227:namespace 1940:WriteLine 1916:or add a 1869:WriteLine 1794:java.lang 1761:java.lang 1712:::chicken 1629:namespace 1586:namespace 1471:// main.c 1220:In large 1062:namespace 1035:namespace 957:sociolect 710:Registrar 668:Hierarchy 610:2341 003f 594:1234 abcd 442:UN/LOCODE 348:separator 341:namespace 94:computers 78:variables 47:namespace 43:computing 3067:Category 3048:cite web 2798:"Syntax" 2659:. Proc. 2563:ZIP code 2553:See also 2281:function 2248:function 1826:Function 1759:package 1619:abc::bar 1480:#include 1474:#include 1179:<< 1176:box_side 1173:<< 1158:<< 1155:box_side 1146:<< 1131:<< 1128:box_side 1119:<< 1104:box_side 1074:box_side 1047:box_side 993:#include 937:concepts 792:Bookland 707:Registry 369:Examples 102:websites 98:printers 2847:. 2013. 2749:classes 2572:biology 2489:(e.g., 2487:Fortran 2327:include 2230:phpstar 2089:Modulea 2060:Modulea 2042:Modulea 2030:Modulea 2027:Modulea 1991:Convert 1987:Console 1967:ToInt32 1961:Convert 1934:Console 1902:ToInt32 1896:Convert 1863:Console 1708:chicken 1706:exist, 1684:chicken 1230:modular 1211:symbols 966:In the 953:dialect 926:context 636:Sydney 527:urn:nbn 379:Context 273:Oranges 184:Oranges 2702:syntax 2661:USENIX 2495:LAPACK 2465:libpng 2375:FooBar 2278:public 2245:public 2239:FooBar 2174:arange 2150:import 2119:Class1 2092:import 2066:Class1 2024:import 2014:Python 2008:Python 1995:System 1983:System 1928:System 1890:System 1857:System 1833:scopes 1774:import 1555:helper 1549:" 1537:printf 1513:helper 1507:" 1495:printf 1465:helper 1423:double 1417:struct 1390:helper 1348:double 1342:struct 1321:return 1288:static 1276:since 1249:Python 947:, the 801:(ISBN) 622:SPARQL 590:PCI ID 446:US NYC 320:prefix 266:Apples 177:Apples 141:, the 110:kernel 2726:them. 2668:(PDF) 2657:(PDF) 2528:DGEMM 2473:This 2432:-> 2420:-> 2236:class 2153:numpy 2104:func2 2098:func1 2095:func1 2048:func2 2036:func1 1925:using 1918:using 1830:class 1735:using 1731:using 1690:. If 1673:::foo 1642:abc:: 1626:using 1414:const 1339:const 1020:using 1005:using 855:scope 727:(URN) 633:>) 518:(URN) 357:> 352:local 199:table 51:names 3054:link 2992:2010 2886:1731 2869:IETF 2825:2141 2808:IETF 2615:and 2540:grep 2524:BLAS 2491:BLAS 2299:echo 2293:void 2266:echo 2260:void 2180:1000 2086:from 2074:The 1989:and 1828:and 1785:java 1747:Java 1741:Java 1702:nor 1489:main 1405:_add 1399:3.14 1294:_add 1253:tree 1182:endl 1170:cout 1161:endl 1149:box2 1143:cout 1134:endl 1122:box1 1116:cout 1092:main 1065:box2 1038:box1 1029:endl 1014:cout 955:, a 943:, a 765:ISBN 500:Java 484:Perl 394:Path 382:Name 355:name 350:< 346:> 344:name 339:< 334:name 88:and 80:and 45:, a 2883:RFC 2873:doi 2822:RFC 2812:doi 2777:W3C 2438:(); 2435:bar 2426:(); 2423:foo 2411:(); 2405:new 2384:use 2378:(); 2372:new 2357:use 2351:(); 2345:new 2284:bar 2251:foo 2217:PHP 2213:PHP 2207:PHP 2201:XML 2199:In 2012:In 1952:int 1881:int 1808:Ada 1757:in 1745:In 1669:foo 1655:foo 1652:int 1632:abc 1615:bar 1598:bar 1595:int 1589:abc 1579:C++ 1577:In 1573:C++ 1534:)); 1519:add 1492:(){ 1486:int 1456:int 1450:int 1441:add 1432:int 1381:int 1375:int 1366:add 1357:int 1309:int 1300:int 1291:int 1278:C99 1245:C++ 1209:or 1101:int 1089:int 1071:int 1044:int 1023:std 1008:std 975:C++ 788:978 781:GS1 740:urn 458:XML 426:C++ 325:In 303:120 225:120 137:In 126:In 41:In 3069:: 3050:}} 3046:{{ 2982:. 2923:. 2908:. 2881:. 2867:. 2861:. 2820:. 2806:. 2800:. 2775:. 2755:, 2751:, 2741:. 2723:. 2719:. 2698:. 2493:, 2408:FB 2393:FB 2390:as 2287:() 2254:() 2168:np 2159:np 2156:as 2122:() 2107:() 2101:() 2069:() 2051:() 2039:() 1997:. 1976:); 1949:); 1911:); 1878:); 1843:C# 1839:. 1812:C# 1810:, 1675:. 1665::: 1613:, 1564:); 1561:pi 1546:\n 1504:\n 1459:); 1426:pi 1408:}; 1384:); 1351:pi 1280:. 1259:. 1247:, 1232:. 1152::: 1125::: 1110:42 1095:() 1080:12 1026::: 1011::: 963:). 837:16 683:. 676:. 475:") 466:" 329:: 296:80 218:80 149:. 116:. 100:, 96:, 57:. 3056:) 3015:. 2994:. 2968:. 2947:. 2894:. 2875:: 2833:. 2814:: 2785:. 2574:) 2508:. 2461:C 2402:= 2396:; 2369:= 2363:; 2342:= 2333:; 2311:} 2308:} 2305:; 2296:{ 2290:: 2275:} 2272:; 2263:{ 2257:: 2242:{ 2233:; 2183:) 2177:( 2171:. 2165:= 2162:a 2116:= 2113:a 2063:. 2057:= 2054:a 2045:. 2033:. 1970:( 1964:. 1958:= 1955:i 1943:( 1937:. 1931:; 1905:( 1899:. 1893:. 1887:= 1884:i 1872:( 1866:. 1860:. 1658:; 1635:; 1604:} 1601:; 1592:{ 1567:} 1558:. 1552:, 1540:( 1531:2 1528:, 1525:3 1522:( 1516:. 1510:, 1498:( 1468:; 1462:} 1453:, 1447:( 1444:) 1438:* 1435:( 1429:; 1420:{ 1402:, 1396:{ 1393:= 1387:} 1378:, 1372:( 1369:) 1363:* 1360:( 1354:; 1345:{ 1336:} 1333:; 1330:b 1327:+ 1324:a 1318:{ 1315:) 1312:b 1306:, 1303:a 1297:( 1274:C 1268:C 1191:} 1185:; 1164:; 1137:; 1113:; 1107:= 1098:{ 1086:} 1083:; 1077:= 1068:{ 1059:} 1056:; 1053:4 1050:= 1041:{ 1032:; 1017:; 983:. 812:3 581:) 337:= 35:. 20:)

Index

Namespaces
Knowledge:Namespace
Linux namespaces
computing
identified
naming of people
file systems
programming languages
variables
subroutines
Computer networks
distributed systems
computers
printers
websites
Operating systems
kernel
containers
hierarchical file systems
computer programming
name collisions
networking
Domain Name System
hierarchical namespaces
HTML table
table
prefix
augmented Backus–Naur form
name resolution
Path

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑