2895:
1897:
1373:
1297:
1176:
709:
73:
434:
380:
339:
175:
32:
273:
that represents encapsulation of an optional value; e.g., it is used as the return type of functions which may or may not return a meaningful value when they are applied. It consists of a constructor which either is empty (often named
549:
589:
569:
4238:
4609:
4243:
3908:
4233:
4228:
4216:
4117:
390:
495:
477:
415:
366:
236:
218:
156:
59:
444:
185:
603:
4660:
4367:
614:
4484:
4289:
4221:
4183:
1534:
1404:
94:
137:
4384:
4314:
4162:
2970:
2605:
1733:
352:
109:
90:
45:
4639:
2347:
740:
298:
459:
200:
4394:
4262:
4002:
3220:
1928:
1328:
766:
116:
455:
196:
83:
4572:
4524:
4436:
4414:
4409:
4337:
4203:
4446:
4110:
123:
4599:
4514:
270:
4342:
4198:
4157:
4152:
309:). The core difference between option types and nullable types is that option types support nesting (e.g.
254:
4332:
4307:
105:
3900:
4670:
4134:
250:
571:, an option type adds exactly one additional value (the empty value) to the set of valid values for
4665:
4604:
4582:
4509:
4362:
4354:
4274:
4103:
3869:
4587:
4567:
4519:
4494:
4279:
4248:
3962:
3874:
515:
4474:
4404:
4379:
4193:
4188:
691:
The monadic nature of the option type is useful for efficiently tracking failure and errors.
4619:
4504:
4302:
3879:
358:
51:
4075:
4026:
4624:
4489:
4441:
4374:
4050:
130:
4577:
4399:
4389:
4297:
3984:
1207:
607:
574:
554:
297:
A distinct, but related concept outside of functional programming, which is popular in
3929:
2894:
1896:
1372:
1296:
1175:
708:
4654:
4499:
3864:
302:
595:, option types can be expressed as the tagged union of the encapsulated type plus a
4456:
4431:
3859:
592:
20:
4634:
4629:
4479:
4253:
3854:
2926:
621:
509:
258:
72:
4539:
4534:
4451:
4419:
4324:
4267:
3954:
4614:
4592:
4549:
4544:
4211:
4167:
4126:
596:
3907:. Sum types. "We could have encoded Maybe as: data Maybe a = Either () a".
4529:
591:. This is reflected in programming by the fact that in languages having
462:. Statements consisting only of original research should be removed.
203:. Statements consisting only of original research should be removed.
1127:
Since C++17, the option type is defined in the standard library as
2136:
3494:// Set up an allocator, and warn if we forget to free any memory.
4147:
16:
Encapsulation of an optional value in programming or type theory
4099:
4142:
2889:
1891:
1367:
1291:
1170:
703:
427:
373:
332:
168:
66:
25:
4095:
551:. This expresses the fact that for a given set of values in
3930:"A Fistful of Monads - Learn You a Haskell for Great Good!"
2906:
1908:
1384:
1308:
1187:
720:
451:
397:
192:
577:
557:
518:
4558:
4467:
4353:
4323:
4288:
4176:
4133:
3245:
3021:
2976:
2932:
2656:
2626:
2611:
2353:
2142:
1739:
1540:
1334:
1213:
1128:
754:
750:
746:
97:. Unsourced material may be challenged and removed.
3840:showValue(allocator, full) -> The value is: 42
583:
563:
543:
19:For families of option contracts in finance, see
282:), or which encapsulates the original data type
2931:In Standard ML, the option type is defined as
4111:
3225:In Zig, add ? before the type name like
8:
3812:"showValue(allocator, empty) -> {s}
1907: with: the definition. You can help by
1383: with: the definition. You can help by
367:Learn how and when to remove these messages
60:Learn how and when to remove these messages
4118:
4104:
4096:
3843:showValue(allocator, empty) -> No value
3725:"showValue(allocator, full) -> {s}
2905: with: example usage. You can help by
1539:In Haskell, the option type is defined as
1307: with: example usage. You can help by
1186: with: example usage. You can help by
719: with: example usage. You can help by
576:
556:
523:
517:
496:Learn how and when to remove this message
478:Learn how and when to remove this message
416:Learn how and when to remove this message
237:Learn how and when to remove this message
219:Learn how and when to remove this message
157:Learn how and when to remove this message
2975:In Swift, the option type is defined as
2610:In Scala, the option type is defined as
2141:In OCaml, the option type is defined as
1738:In Idris, the option type is defined as
617:containing either one or zero elements.
3891:
2591:show_value(full) -> The value is: 42
2352:In Rust, the option type is defined as
3590:// Prepare the standard output stream.
3206:showValue(full) -> The value is: 42
2877:showValue(full) -> The value is: 42
2566:"show_value(empty) -> {}"
2333:show_value full -> The value is: 42
2122:showValue(full) -> The Value is: 42
1333:In Elm, the option type is defined as
1212:In Coq, the option type is defined as
771:In ATS, the option type is defined as
2542:"show_value(full) -> {}"
1879:showValue full -> The value is: 42
1719:showValue full -> The value is: 42
1520:showValue full -> The value is: 42
930:"share/atspre_staload.hats"
613:An option type can also be seen as a
387:This section may contain information
317:), while nullable types do not (e.g.
7:
1513:"showValue empty -> %s"
686:-- Succeeds when both monads succeed
656:-- Fails if the previous monad fails
95:adding citations to reliable sources
3905:Bartosz Milewski's Programming Cafe
2314:"show_value empty -> "
2100:"showValue(empty) -> "
1498:"showValue full -> %s"
2293:"show_value full -> "
2079:"showValue(full) -> "
1868:"showValue empty -> "
1703:"showValue empty -> "
745:In Agda, the option type is named
606:, option types are related to the
14:
1858:"showValue full -> "
1685:"showValue full -> "
348:This section has multiple issues.
41:This article has multiple issues.
4003:"6 Predefined Types and Classes"
3985:"Maybe · An Introduction to Elm"
3899:Milewski, Bartosz (2015-01-13).
2893:
2594:show_value(empty) -> No value
1895:
1371:
1295:
1174:
707:
432:
378:
337:
173:
71:
30:
4076:"Apple Developer Documentation"
4051:"Option in core::option - Rust"
3965:from the original on 2021-12-20
3953:Hutton, Graham (Nov 25, 2017).
3911:from the original on 2019-08-18
3209:showValue(empty) -> No value
2880:showValue(empty) -> No value
2336:show_value empty -> No value
2125:showValue(empty) -> No value
1092:"show_value empty → "
638:-- Wraps the value into a maybe
356:or discuss these issues on the
82:needs additional citations for
49:or discuss these issues on the
2846:s"showValue(empty) ->
1882:showValue empty -> No value
1722:showValue empty -> No value
1535:Haskell (programming language)
1523:showValue empty -> No value
1405:F Sharp (programming language)
1071:"show_value full → "
1:
4184:Arbitrary-precision or bignum
4027:"OCaml library : Option"
3901:"Simple Algebraic Data Types"
3293:clause is evaluated if it is
3229:to make it an optional type.
3178:"showValue(empty) ->
2813:s"showValue(full) ->
3428:"The value is: {}"
3148:"showValue(full) ->
3020:but is generally written as
2971:Swift (programming language)
2606:Scala (programming language)
2473:"The value is: {}"
1734:Idris (programming language)
1447:"The value is: %d"
2348:Rust (programming language)
1117:show_value empty → No value
741:Agda (programming language)
604:Curry–Howard correspondence
458:the claims made and adding
299:object-oriented programming
199:the claims made and adding
4687:
3221:Zig (programming language)
3218:
2968:
2924:
2603:
2345:
2230:"The value is: "
2134:
2010:"The value is: "
1929:Nim (programming language)
1926:
1731:
1613:"The value is: "
1532:
1402:
1329:Elm (programming language)
1326:
1205:
767:ATS (programming language)
764:
738:
620:The option type is also a
18:
4525:Strongly typed identifier
1799:"The value is "
544:{\displaystyle A^{?}=A+1}
393:to the article's subject.
3934:www.learnyouahaskell.com
3837:
3299:
3203:
3031:
2874:
2669:
2588:
2396:
2330:
2179:
2119:
1932:
1876:
1763:
1716:
1568:
1517:
1408:
1111:
921:
773:
626:
512:, it may be written as:
4600:Parametric polymorphism
3626:// Perform our example.
3518:GeneralPurposeAllocator
4661:Functional programming
3236:can be captured in an
1863:showValuefull putStrLn
869:option_t0ype_bool_type
779:option_t0ype_bool_type
585:
565:
545:
255:functional programming
3959:Computerphile Youtube
3219:Further information:
2969:Further information:
2925:Further information:
2732:s"The value is:
2625:, a type extended by
2604:Further information:
2346:Further information:
2135:Further information:
1927:Further information:
1732:Further information:
1533:Further information:
1403:Further information:
1327:Further information:
1206:Further information:
765:Further information:
739:Further information:
586:
566:
546:
391:important or relevant
251:programming languages
3464:"No value"
3103:"No value"
3082:"The value is:
2720:"No value"
2446:"No value"
2209:"No value"
2031:"No value"
1809:"No value"
1628:"No value"
1456:"No value"
1114:show_value full → 42
987:"No value"
575:
555:
516:
398:improve this section
311:Maybe (Maybe String)
305:(often expressed as
91:improve this article
4605:Primitive data type
4510:Recursive data type
4363:Algebraic data type
4239:Quadruple precision
4080:developer.apple.com
3870:Null object pattern
3244:statement, such as
329:Theoretical aspects
4568:Abstract data type
4249:Extended precision
4208:Reduced precision
3989:guide.elm-lang.org
3955:"What is a Monad?"
3875:Exception handling
581:
561:
541:
443:possibly contains
184:possibly contains
4648:
4647:
4380:Associative array
4244:Octuple precision
4055:doc.rust-lang.org
2923:
2922:
1925:
1924:
1401:
1400:
1325:
1324:
1204:
1203:
737:
736:
584:{\displaystyle A}
564:{\displaystyle A}
506:
505:
498:
488:
487:
480:
445:original research
426:
425:
418:
371:
247:
246:
239:
229:
228:
221:
186:original research
167:
166:
159:
141:
64:
4678:
4620:Type constructor
4505:Opaque data type
4437:Record or Struct
4234:Double precision
4229:Single precision
4120:
4113:
4106:
4097:
4090:
4089:
4087:
4086:
4072:
4066:
4065:
4063:
4062:
4047:
4041:
4040:
4038:
4037:
4023:
4017:
4016:
4014:
4013:
3999:
3993:
3992:
3981:
3975:
3974:
3972:
3970:
3950:
3944:
3943:
3941:
3940:
3926:
3920:
3919:
3917:
3916:
3896:
3880:Pattern matching
3844:
3841:
3834:
3831:
3828:
3825:
3822:
3819:
3816:
3813:
3810:
3807:
3804:
3801:
3798:
3795:
3792:
3789:
3786:
3783:
3780:
3777:
3774:
3771:
3768:
3765:
3762:
3759:
3756:
3753:
3750:
3747:
3744:
3741:
3738:
3735:
3732:
3729:
3726:
3723:
3720:
3717:
3714:
3711:
3708:
3705:
3702:
3699:
3696:
3693:
3690:
3687:
3684:
3681:
3678:
3675:
3672:
3669:
3666:
3663:
3660:
3657:
3654:
3651:
3648:
3645:
3642:
3639:
3636:
3633:
3630:
3627:
3624:
3621:
3618:
3615:
3612:
3609:
3606:
3603:
3600:
3597:
3594:
3591:
3588:
3585:
3582:
3579:
3576:
3573:
3570:
3567:
3564:
3561:
3558:
3555:
3552:
3549:
3546:
3543:
3540:
3537:
3534:
3531:
3528:
3525:
3522:
3519:
3516:
3513:
3510:
3507:
3504:
3501:
3498:
3495:
3492:
3489:
3486:
3483:
3480:
3477:
3474:
3471:
3468:
3465:
3462:
3459:
3456:
3453:
3450:
3447:
3444:
3441:
3438:
3435:
3432:
3429:
3426:
3423:
3420:
3417:
3414:
3411:
3408:
3405:
3402:
3399:
3396:
3393:
3390:
3387:
3384:
3381:
3378:
3375:
3372:
3369:
3366:
3363:
3360:
3357:
3354:
3351:
3348:
3345:
3342:
3339:
3336:
3333:
3330:
3327:
3324:
3321:
3318:
3315:
3312:
3309:
3306:
3303:
3296:
3288:
3287:
3284:
3281:
3278:
3275:
3272:
3269:
3266:
3263:
3260:
3257:
3254:
3251:
3248:
3228:
3210:
3207:
3200:
3197:
3194:
3191:
3188:
3185:
3182:
3179:
3176:
3173:
3170:
3167:
3164:
3161:
3158:
3155:
3152:
3149:
3146:
3143:
3140:
3137:
3134:
3131:
3128:
3125:
3122:
3119:
3116:
3113:
3110:
3107:
3104:
3101:
3098:
3095:
3092:
3089:
3086:
3083:
3080:
3077:
3074:
3071:
3068:
3065:
3062:
3059:
3056:
3053:
3050:
3047:
3044:
3041:
3038:
3035:
3028:
3027:
3024:
3019:
3018:
3015:
3012:
3009:
3006:
3003:
3000:
2997:
2994:
2991:
2988:
2985:
2982:
2979:
2960:
2959:
2956:
2953:
2950:
2947:
2944:
2941:
2938:
2935:
2918:
2915:
2897:
2890:
2881:
2878:
2871:
2868:
2865:
2862:
2859:
2856:
2853:
2850:
2847:
2844:
2841:
2838:
2835:
2832:
2829:
2826:
2823:
2820:
2817:
2814:
2811:
2808:
2805:
2802:
2799:
2796:
2793:
2790:
2787:
2784:
2781:
2778:
2775:
2772:
2769:
2766:
2763:
2760:
2757:
2754:
2751:
2748:
2745:
2742:
2739:
2736:
2733:
2730:
2727:
2724:
2721:
2718:
2715:
2712:
2709:
2706:
2703:
2700:
2697:
2694:
2691:
2688:
2685:
2682:
2679:
2676:
2673:
2666:
2665:
2662:
2659:
2654:
2653:
2650:
2647:
2644:
2641:
2638:
2635:
2632:
2629:
2624:
2623:
2620:
2617:
2614:
2595:
2592:
2585:
2582:
2579:
2576:
2573:
2570:
2567:
2564:
2561:
2558:
2555:
2552:
2549:
2546:
2543:
2540:
2537:
2534:
2531:
2528:
2525:
2522:
2519:
2516:
2513:
2510:
2507:
2504:
2501:
2498:
2495:
2492:
2489:
2486:
2483:
2480:
2477:
2474:
2471:
2468:
2465:
2462:
2459:
2456:
2453:
2450:
2447:
2444:
2441:
2438:
2435:
2432:
2429:
2425:
2422:
2419:
2416:
2413:
2409:
2406:
2403:
2400:
2393:
2392:
2389:
2386:
2383:
2380:
2377:
2374:
2371:
2368:
2365:
2362:
2359:
2356:
2337:
2334:
2327:
2324:
2321:
2318:
2315:
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:
2222:
2219:
2216:
2213:
2210:
2207:
2204:
2201:
2198:
2195:
2192:
2189:
2186:
2183:
2176:
2175:
2172:
2169:
2166:
2163:
2160:
2157:
2154:
2151:
2148:
2145:
2126:
2123:
2116:
2113:
2110:
2107:
2104:
2101:
2098:
2095:
2092:
2089:
2086:
2083:
2080:
2077:
2074:
2071:
2068:
2065:
2062:
2059:
2056:
2053:
2050:
2047:
2044:
2041:
2038:
2035:
2032:
2029:
2026:
2023:
2020:
2017:
2014:
2011:
2008:
2005:
2002:
1999:
1996:
1993:
1990:
1987:
1984:
1981:
1978:
1975:
1972:
1969:
1966:
1963:
1960:
1957:
1954:
1951:
1948:
1945:
1942:
1939:
1936:
1920:
1917:
1899:
1892:
1883:
1880:
1872:
1869:
1866:
1862:
1859:
1856:
1852:
1849:
1845:
1842:
1839:
1836:
1832:
1829:
1826:
1822:
1819:
1816:
1813:
1810:
1807:
1803:
1800:
1797:
1793:
1790:
1786:
1782:
1779:
1776:
1773:
1770:
1767:
1760:
1758:
1755:
1752:
1749:
1745:
1742:
1723:
1720:
1713:
1710:
1707:
1704:
1701:
1698:
1695:
1692:
1689:
1686:
1683:
1680:
1677:
1674:
1671:
1668:
1665:
1662:
1659:
1656:
1653:
1650:
1647:
1644:
1641:
1638:
1635:
1632:
1629:
1626:
1623:
1620:
1617:
1614:
1611:
1608:
1605:
1602:
1599:
1596:
1593:
1590:
1587:
1584:
1581:
1578:
1575:
1572:
1565:
1564:
1561:
1558:
1555:
1552:
1549:
1546:
1543:
1524:
1521:
1514:
1511:
1508:
1505:
1502:
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:
1396:
1393:
1375:
1368:
1359:
1358:
1355:
1352:
1349:
1346:
1343:
1340:
1337:
1320:
1317:
1299:
1292:
1283:
1282:
1279:
1276:
1273:
1270:
1267:
1264:
1261:
1258:
1255:
1252:
1249:
1246:
1243:
1240:
1237:
1234:
1231:
1228:
1225:
1222:
1219:
1216:
1199:
1196:
1178:
1171:
1162:
1161:
1158:
1155:
1152:
1149:
1146:
1143:
1140:
1137:
1134:
1131:
1118:
1115:
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:
994:
991:
988:
985:
982:
979:
976:
973:
970:
967:
964:
961:
958:
955:
952:
949:
946:
943:
940:
937:
934:
931:
928:
925:
918:
915:
912:
909:
906:
903:
900:
897:
894:
891:
888:
885:
882:
879:
876:
873:
870:
867:
864:
861:
858:
855:
852:
849:
846:
843:
840:
837:
834:
831:
828:
825:
822:
819:
816:
813:
810:
807:
804:
801:
798:
795:
792:
789:
786:
783:
780:
777:
756:
752:
748:
732:
729:
711:
704:
687:
684:
681:
678:
675:
672:
669:
666:
663:
660:
657:
654:
651:
648:
645:
642:
639:
636:
633:
630:
608:annihilation law
590:
588:
587:
582:
570:
568:
567:
562:
550:
548:
547:
542:
528:
527:
501:
494:
483:
476:
472:
469:
463:
460:inline citations
436:
435:
428:
421:
414:
410:
407:
401:
382:
381:
374:
363:
341:
340:
333:
324:
320:
316:
312:
308:
293:
289:
285:
281:
277:
271:polymorphic type
242:
235:
224:
217:
213:
210:
204:
201:inline citations
177:
176:
169:
162:
155:
151:
148:
142:
140:
99:
75:
67:
56:
34:
33:
26:
4686:
4685:
4681:
4680:
4679:
4677:
4676:
4675:
4651:
4650:
4649:
4644:
4625:Type conversion
4560:
4554:
4490:Enumerated type
4463:
4349:
4343:null-terminated
4319:
4284:
4172:
4129:
4124:
4094:
4093:
4084:
4082:
4074:
4073:
4069:
4060:
4058:
4049:
4048:
4044:
4035:
4033:
4025:
4024:
4020:
4011:
4009:
4007:www.haskell.org
4001:
4000:
3996:
3983:
3982:
3978:
3968:
3966:
3952:
3951:
3947:
3938:
3936:
3928:
3927:
3923:
3914:
3912:
3898:
3897:
3893:
3888:
3851:
3846:
3845:
3842:
3839:
3836:
3835:
3832:
3829:
3826:
3823:
3820:
3817:
3814:
3811:
3808:
3805:
3802:
3799:
3796:
3793:
3790:
3787:
3784:
3781:
3778:
3775:
3772:
3769:
3766:
3763:
3760:
3757:
3754:
3751:
3748:
3745:
3742:
3739:
3736:
3733:
3730:
3727:
3724:
3721:
3718:
3715:
3712:
3709:
3706:
3703:
3700:
3697:
3694:
3691:
3688:
3685:
3682:
3679:
3676:
3673:
3670:
3667:
3664:
3661:
3658:
3655:
3652:
3649:
3646:
3643:
3640:
3637:
3634:
3631:
3628:
3625:
3622:
3619:
3616:
3613:
3610:
3607:
3604:
3601:
3598:
3595:
3592:
3589:
3586:
3583:
3580:
3577:
3574:
3571:
3568:
3565:
3562:
3559:
3556:
3553:
3550:
3547:
3544:
3541:
3538:
3535:
3532:
3529:
3526:
3523:
3520:
3517:
3514:
3511:
3508:
3505:
3502:
3499:
3496:
3493:
3490:
3487:
3484:
3481:
3478:
3475:
3472:
3469:
3466:
3463:
3460:
3457:
3454:
3451:
3448:
3445:
3442:
3439:
3436:
3433:
3430:
3427:
3424:
3421:
3418:
3415:
3412:
3409:
3406:
3403:
3400:
3397:
3394:
3391:
3388:
3385:
3382:
3379:
3376:
3373:
3370:
3367:
3364:
3361:
3358:
3355:
3352:
3349:
3346:
3343:
3340:
3337:
3334:
3331:
3328:
3325:
3322:
3319:
3317:"std"
3316:
3313:
3310:
3307:
3304:
3301:
3294:
3285:
3282:
3279:
3276:
3273:
3270:
3267:
3264:
3261:
3258:
3255:
3252:
3249:
3246:
3235:
3226:
3223:
3217:
3212:
3211:
3208:
3205:
3202:
3201:
3198:
3195:
3192:
3189:
3186:
3183:
3180:
3177:
3174:
3171:
3168:
3165:
3162:
3159:
3156:
3153:
3150:
3147:
3144:
3141:
3138:
3135:
3132:
3129:
3126:
3123:
3120:
3117:
3114:
3111:
3108:
3105:
3102:
3099:
3096:
3093:
3090:
3087:
3084:
3081:
3078:
3075:
3072:
3069:
3066:
3063:
3060:
3057:
3054:
3051:
3048:
3045:
3042:
3039:
3036:
3033:
3025:
3022:
3016:
3013:
3010:
3007:
3004:
3001:
2998:
2995:
2992:
2989:
2986:
2983:
2980:
2977:
2973:
2967:
2957:
2954:
2951:
2948:
2945:
2942:
2939:
2936:
2933:
2929:
2919:
2913:
2910:
2903:needs expansion
2888:
2883:
2882:
2879:
2876:
2873:
2872:
2869:
2866:
2863:
2860:
2857:
2854:
2851:
2848:
2845:
2842:
2839:
2836:
2833:
2830:
2827:
2824:
2821:
2818:
2815:
2812:
2809:
2806:
2803:
2800:
2797:
2794:
2791:
2788:
2785:
2782:
2779:
2776:
2773:
2770:
2767:
2764:
2761:
2758:
2755:
2752:
2749:
2746:
2743:
2740:
2737:
2734:
2731:
2728:
2725:
2722:
2719:
2716:
2713:
2710:
2707:
2704:
2701:
2698:
2695:
2692:
2689:
2686:
2683:
2680:
2677:
2674:
2671:
2663:
2660:
2657:
2651:
2648:
2645:
2642:
2639:
2636:
2633:
2630:
2627:
2621:
2618:
2615:
2612:
2608:
2602:
2597:
2596:
2593:
2590:
2587:
2586:
2583:
2580:
2577:
2574:
2571:
2568:
2565:
2562:
2559:
2556:
2553:
2550:
2547:
2544:
2541:
2538:
2535:
2532:
2529:
2526:
2523:
2520:
2517:
2514:
2511:
2508:
2505:
2502:
2499:
2496:
2493:
2490:
2487:
2484:
2481:
2478:
2475:
2472:
2469:
2466:
2463:
2460:
2457:
2454:
2451:
2448:
2445:
2442:
2439:
2436:
2433:
2430:
2427:
2423:
2420:
2417:
2414:
2411:
2407:
2404:
2401:
2398:
2390:
2387:
2384:
2381:
2378:
2375:
2372:
2369:
2366:
2363:
2360:
2357:
2354:
2350:
2344:
2339:
2338:
2335:
2332:
2329:
2328:
2325:
2322:
2319:
2316:
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:
2220:
2217:
2214:
2211:
2208:
2205:
2202:
2199:
2196:
2193:
2190:
2187:
2184:
2181:
2173:
2170:
2167:
2164:
2161:
2158:
2155:
2152:
2149:
2146:
2143:
2139:
2133:
2128:
2127:
2124:
2121:
2118:
2117:
2114:
2111:
2108:
2105:
2102:
2099:
2096:
2093:
2090:
2087:
2084:
2081:
2078:
2075:
2072:
2069:
2066:
2063:
2060:
2057:
2054:
2051:
2048:
2045:
2042:
2039:
2036:
2033:
2030:
2027:
2024:
2021:
2018:
2015:
2012:
2009:
2006:
2003:
2000:
1997:
1994:
1991:
1988:
1985:
1982:
1979:
1976:
1973:
1970:
1967:
1964:
1961:
1958:
1955:
1952:
1949:
1946:
1943:
1940:
1937:
1934:
1931:
1921:
1915:
1912:
1905:needs expansion
1890:
1885:
1884:
1881:
1878:
1875:
1874:
1873:showValueempty
1870:
1867:
1864:
1860:
1857:
1854:
1850:
1847:
1843:
1840:
1837:
1834:
1830:
1827:
1824:
1820:
1817:
1814:
1811:
1808:
1805:
1801:
1798:
1795:
1791:
1788:
1784:
1780:
1777:
1774:
1771:
1768:
1765:
1756:
1753:
1750:
1747:
1743:
1740:
1736:
1730:
1725:
1724:
1721:
1718:
1715:
1714:
1711:
1708:
1705:
1702:
1699:
1696:
1693:
1690:
1687:
1684:
1681:
1678:
1675:
1672:
1669:
1666:
1663:
1660:
1657:
1654:
1651:
1648:
1645:
1642:
1639:
1636:
1633:
1630:
1627:
1624:
1621:
1618:
1615:
1612:
1609:
1606:
1603:
1600:
1597:
1594:
1591:
1588:
1585:
1582:
1579:
1576:
1573:
1570:
1562:
1559:
1556:
1553:
1550:
1547:
1544:
1541:
1537:
1531:
1526:
1525:
1522:
1519:
1516:
1515:
1512:
1509:
1506:
1503:
1500:
1497:
1494:
1491:
1488:
1485:
1482:
1479:
1476:
1473:
1470:
1467:
1464:
1461:
1458:
1455:
1452:
1449:
1446:
1443:
1440:
1437:
1434:
1431:
1428:
1425:
1422:
1419:
1416:
1413:
1410:
1407:
1397:
1391:
1388:
1381:needs expansion
1366:
1356:
1353:
1350:
1347:
1344:
1341:
1338:
1335:
1331:
1321:
1315:
1312:
1305:needs expansion
1290:
1280:
1277:
1274:
1271:
1268:
1265:
1262:
1259:
1256:
1253:
1250:
1247:
1244:
1241:
1238:
1235:
1232:
1229:
1226:
1223:
1220:
1217:
1214:
1210:
1200:
1194:
1191:
1184:needs expansion
1169:
1159:
1156:
1153:
1150:
1147:
1144:
1141:
1138:
1135:
1132:
1129:
1125:
1120:
1119:
1116:
1113:
1110:
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:
989:
986:
983:
980:
977:
974:
971:
968:
965:
962:
959:
956:
953:
950:
947:
944:
941:
938:
935:
932:
929:
926:
923:
920:
919:
916:
913:
910:
907:
904:
901:
898:
895:
892:
889:
886:
883:
880:
877:
874:
871:
868:
865:
862:
859:
856:
853:
850:
847:
844:
841:
838:
835:
832:
829:
826:
823:
820:
817:
814:
811:
808:
805:
802:
799:
796:
793:
790:
787:
784:
781:
778:
775:
769:
763:
743:
733:
727:
724:
717:needs expansion
702:
697:
689:
688:
685:
682:
679:
676:
673:
670:
667:
664:
661:
658:
655:
652:
649:
646:
643:
640:
637:
634:
631:
628:
573:
572:
553:
552:
519:
514:
513:
502:
491:
490:
489:
484:
473:
467:
464:
449:
437:
433:
422:
411:
405:
402:
395:
383:
379:
342:
338:
331:
322:
318:
314:
310:
306:
291:
287:
286:(often written
283:
279:
275:
257:languages) and
243:
232:
231:
230:
225:
214:
208:
205:
190:
178:
174:
163:
152:
146:
143:
100:
98:
88:
76:
35:
31:
24:
17:
12:
11:
5:
4684:
4682:
4674:
4673:
4668:
4663:
4653:
4652:
4646:
4645:
4643:
4642:
4637:
4632:
4627:
4622:
4617:
4612:
4607:
4602:
4597:
4596:
4595:
4585:
4580:
4578:Data structure
4575:
4570:
4564:
4562:
4556:
4555:
4553:
4552:
4547:
4542:
4537:
4532:
4527:
4522:
4517:
4512:
4507:
4502:
4497:
4492:
4487:
4482:
4477:
4471:
4469:
4465:
4464:
4462:
4461:
4460:
4459:
4449:
4444:
4439:
4434:
4429:
4424:
4423:
4422:
4412:
4407:
4402:
4397:
4392:
4387:
4382:
4377:
4372:
4371:
4370:
4359:
4357:
4351:
4350:
4348:
4347:
4346:
4345:
4335:
4329:
4327:
4321:
4320:
4318:
4317:
4312:
4311:
4310:
4305:
4294:
4292:
4286:
4285:
4283:
4282:
4277:
4272:
4271:
4270:
4260:
4259:
4258:
4257:
4256:
4246:
4241:
4236:
4231:
4226:
4225:
4224:
4219:
4217:Half precision
4214:
4204:Floating point
4201:
4196:
4191:
4186:
4180:
4178:
4174:
4173:
4171:
4170:
4165:
4160:
4155:
4150:
4145:
4139:
4137:
4131:
4130:
4125:
4123:
4122:
4115:
4108:
4100:
4092:
4091:
4067:
4042:
4018:
3994:
3976:
3945:
3921:
3890:
3889:
3887:
3884:
3883:
3882:
3877:
3872:
3867:
3862:
3857:
3850:
3847:
3838:
3300:
3233:
3216:
3213:
3204:
3032:
2966:
2963:
2921:
2920:
2900:
2898:
2887:
2884:
2875:
2670:
2601:
2598:
2589:
2397:
2343:
2340:
2331:
2180:
2132:
2129:
2120:
1933:
1923:
1922:
1902:
1900:
1889:
1886:
1877:
1764:
1729:
1726:
1717:
1569:
1530:
1527:
1518:
1409:
1399:
1398:
1378:
1376:
1365:
1362:
1323:
1322:
1302:
1300:
1289:
1286:
1208:Coq (software)
1202:
1201:
1181:
1179:
1168:
1165:
1124:
1121:
1112:
922:
774:
762:
759:
749:with variants
735:
734:
714:
712:
701:
698:
696:
693:
627:
610:for ∨: x∨1=1.
580:
560:
540:
537:
534:
531:
526:
522:
504:
503:
486:
485:
440:
438:
431:
424:
423:
386:
384:
377:
372:
346:
345:
343:
336:
330:
327:
303:nullable types
245:
244:
227:
226:
181:
179:
172:
165:
164:
79:
77:
70:
65:
39:
38:
36:
29:
15:
13:
10:
9:
6:
4:
3:
2:
4683:
4672:
4669:
4667:
4664:
4662:
4659:
4658:
4656:
4641:
4638:
4636:
4633:
4631:
4628:
4626:
4623:
4621:
4618:
4616:
4613:
4611:
4608:
4606:
4603:
4601:
4598:
4594:
4591:
4590:
4589:
4586:
4584:
4581:
4579:
4576:
4574:
4571:
4569:
4566:
4565:
4563:
4557:
4551:
4548:
4546:
4543:
4541:
4538:
4536:
4533:
4531:
4528:
4526:
4523:
4521:
4518:
4516:
4513:
4511:
4508:
4506:
4503:
4501:
4500:Function type
4498:
4496:
4493:
4491:
4488:
4486:
4483:
4481:
4478:
4476:
4473:
4472:
4470:
4466:
4458:
4455:
4454:
4453:
4450:
4448:
4445:
4443:
4440:
4438:
4435:
4433:
4430:
4428:
4425:
4421:
4418:
4417:
4416:
4413:
4411:
4408:
4406:
4403:
4401:
4398:
4396:
4393:
4391:
4388:
4386:
4383:
4381:
4378:
4376:
4373:
4369:
4366:
4365:
4364:
4361:
4360:
4358:
4356:
4352:
4344:
4341:
4340:
4339:
4336:
4334:
4331:
4330:
4328:
4326:
4322:
4316:
4313:
4309:
4306:
4304:
4301:
4300:
4299:
4296:
4295:
4293:
4291:
4287:
4281:
4278:
4276:
4273:
4269:
4266:
4265:
4264:
4261:
4255:
4252:
4251:
4250:
4247:
4245:
4242:
4240:
4237:
4235:
4232:
4230:
4227:
4223:
4220:
4218:
4215:
4213:
4210:
4209:
4207:
4206:
4205:
4202:
4200:
4197:
4195:
4192:
4190:
4187:
4185:
4182:
4181:
4179:
4175:
4169:
4166:
4164:
4161:
4159:
4156:
4154:
4151:
4149:
4146:
4144:
4141:
4140:
4138:
4136:
4135:Uninterpreted
4132:
4128:
4121:
4116:
4114:
4109:
4107:
4102:
4101:
4098:
4081:
4077:
4071:
4068:
4056:
4052:
4046:
4043:
4032:
4028:
4022:
4019:
4008:
4004:
3998:
3995:
3990:
3986:
3980:
3977:
3964:
3960:
3956:
3949:
3946:
3935:
3931:
3925:
3922:
3910:
3906:
3902:
3895:
3892:
3885:
3881:
3878:
3876:
3873:
3871:
3868:
3866:
3865:Nullable type
3863:
3861:
3858:
3856:
3853:
3852:
3848:
3298:
3292:
3243:
3239:
3230:
3222:
3214:
3030:
2972:
2964:
2962:
2928:
2917:
2908:
2904:
2901:This section
2899:
2896:
2892:
2891:
2885:
2668:
2607:
2599:
2395:
2349:
2341:
2308:print_endline
2287:print_endline
2236:string_of_int
2178:
2138:
2130:
1930:
1919:
1910:
1906:
1903:This section
1901:
1898:
1894:
1893:
1887:
1762:
1735:
1727:
1567:
1536:
1528:
1406:
1395:
1386:
1382:
1379:This section
1377:
1374:
1370:
1369:
1363:
1361:
1330:
1319:
1310:
1306:
1303:This section
1301:
1298:
1294:
1293:
1287:
1285:
1209:
1198:
1189:
1185:
1182:This section
1180:
1177:
1173:
1172:
1166:
1164:
1122:
772:
768:
760:
758:
742:
731:
722:
718:
715:This section
713:
710:
706:
705:
699:
694:
692:
625:
623:
618:
616:
611:
609:
605:
600:
598:
594:
593:tagged unions
578:
558:
538:
535:
532:
529:
524:
520:
511:
500:
497:
482:
479:
471:
461:
457:
453:
447:
446:
441:This section
439:
430:
429:
420:
417:
409:
399:
394:
392:
385:
376:
375:
370:
368:
361:
360:
355:
354:
349:
344:
335:
334:
328:
326:
304:
300:
295:
272:
268:
264:
260:
256:
252:
241:
238:
223:
220:
212:
202:
198:
194:
188:
187:
182:This article
180:
171:
170:
161:
158:
150:
139:
136:
132:
129:
125:
122:
118:
115:
111:
108: –
107:
106:"Option type"
103:
102:Find sources:
96:
92:
86:
85:
80:This article
78:
74:
69:
68:
63:
61:
54:
53:
48:
47:
42:
37:
28:
27:
22:
4426:
4405:Intersection
4083:. Retrieved
4079:
4070:
4059:. Retrieved
4057:. 2022-05-18
4054:
4045:
4034:. Retrieved
4031:v2.ocaml.org
4030:
4021:
4010:. Retrieved
4006:
3997:
3988:
3979:
3967:. Retrieved
3958:
3948:
3937:. Retrieved
3933:
3924:
3913:. Retrieved
3904:
3894:
3860:Tagged union
3290:
3241:
3237:
3231:
3224:
2974:
2930:
2911:
2907:adding to it
2902:
2609:
2351:
2140:
1913:
1909:adding to it
1904:
1737:
1538:
1389:
1385:adding to it
1380:
1332:
1313:
1309:adding to it
1304:
1211:
1192:
1188:adding to it
1183:
1126:
1008:tostring_int
770:
744:
725:
721:adding to it
716:
690:
619:
612:
601:
507:
492:
474:
465:
442:
412:
403:
396:Please help
388:
364:
357:
351:
350:Please help
347:
315:Maybe String
301:, is called
296:
266:
262:
253:(especially
248:
233:
215:
206:
183:
153:
144:
134:
127:
120:
113:
101:
89:Please help
84:verification
81:
57:
50:
44:
43:Please help
40:
21:Option style
4671:Type theory
4635:Type theory
4630:Type system
4480:Bottom type
4427:Option type
4368:generalized
4254:Long double
4199:Fixed point
3855:Result type
2927:Standard ML
2886:Standard ML
510:type theory
468:August 2019
263:option type
259:type theory
4666:Data types
4655:Categories
4540:Empty type
4535:Type class
4485:Collection
4442:Refinement
4420:metaobject
4268:signedness
4127:Data types
4085:2020-09-06
4061:2022-06-15
4036:2022-06-15
4012:2022-06-15
3939:2019-08-18
3915:2019-08-18
3886:References
3416:allocPrint
2572:show_value
2548:show_value
2402:show_value
2320:show_value
2299:show_value
2185:show_value
1098:show_value
1077:show_value
936:show_value
615:collection
452:improve it
353:improve it
267:maybe type
193:improve it
117:newspapers
46:improve it
4615:Subtyping
4610:Interface
4593:metaclass
4545:Unit type
4515:Semaphore
4495:Exception
4400:Inductive
4390:Dependent
4355:Composite
4333:Character
4315:Reference
4212:Minifloat
4168:Bit array
3827:empty_msg
3791:empty_msg
3779:allocator
3764:allocator
3758:showValue
3749:empty_msg
3692:allocator
3677:allocator
3671:showValue
3614:getStdOut
3584:allocator
3572:allocator
3446:allocator
3422:allocator
3350:Allocator
3332:allocator
3326:showValue
3289:, and an
3184:showValue
3154:showValue
3037:showValue
2914:July 2022
2852:showValue
2819:showValue
2684:showValue
2106:showValue
2085:showValue
1950:showValue
1916:July 2022
1783:showValue
1766:showValue
1709:showValue
1691:showValue
1589:showValue
1571:showValue
1501:showValue
1486:showValue
1414:showValue
1392:July 2022
1316:July 2022
1215:Inductive
1195:July 2022
1014:implement
728:July 2022
671:>>=
644:>>=
597:unit type
456:verifying
406:July 2019
359:talk page
209:July 2019
197:verifying
147:July 2019
52:talk page
4640:Variable
4530:Top type
4395:Equality
4303:physical
4280:Rational
4275:Interval
4222:bfloat16
3963:Archived
3909:Archived
3849:See also
3740:full_msg
3704:full_msg
3662:full_msg
3521:(.{}){};
3232:Payload
2981:Optional
2934:datatype
2616:abstract
2560:println!
2536:println!
2452:to_owned
1853:putStrLn
1697:putStrLn
1679:putStrLn
1151:optional
1136:typename
1130:template
776:datatype
695:Examples
319:String??
4583:Generic
4559:Related
4475:Boolean
4432:Product
4308:virtual
4298:Address
4290:Pointer
4263:Integer
4194:Decimal
4189:Complex
4177:Numeric
3969:Aug 18,
3311:@import
2840:println
2807:println
2467:format!
1944:options
1851:Nothing
1751:Nothing
1676:Nothing
1554:Nothing
1529:Haskell
1510:printfn
1495:printfn
1444:sprintf
1357:Nothing
1086:println
1065:println
927:include
872:typedef
751:nothing
653:Nothing
641:Nothing
624:where:
602:In the
450:Please
323:String?
280:Nothing
191:Please
131:scholar
4573:Boxing
4561:topics
4520:Stream
4457:tagged
4415:Object
4338:String
3818:"
3800:stdout
3731:"
3713:stdout
3620:writer
3596:stdout
3551:deinit
3539:assert
3380:return
3196:"
3166:"
3094:"
3067:return
3061:String
2958:'a
2940:option
2937:'a
2867:"
2834:"
2741:"
2702:String
2696:Option
2672:object
2661:object
2622:Option
2613:sealed
2440:map_or
2428:String
2426:->
2412:Option
2358:Option
2191:Option
2153:option
2004:string
1968:string
1962:Option
1935:import
1781:String
1586:String
1420:Option
1275:option
1260:option
1218:option
957:string
948:Option
902:option
875:Option
863:option
860:stadef
629:return
292:Some A
288:Just A
133:
126:
119:
112:
104:
4468:Other
4452:Union
4385:Class
4375:Array
4158:Tryte
3806:print
3776:defer
3770:empty
3746:const
3719:print
3689:defer
3659:const
3647:empty
3644:const
3629:const
3593:const
3569:const
3533:debug
3524:defer
3302:const
3242:while
3190:empty
3172:print
3142:print
3124:empty
3058:->
2965:Swift
2858:empty
2798:empty
2762:Array
2729:=>
2643:value
2634:class
2628:final
2619:class
2600:Scala
2578:empty
2524:empty
2323:empty
2275:empty
2227:->
2171:'
2147:'
2137:OCaml
2131:OCaml
2112:empty
2058:empty
2013:&
1846:empty
1804:showx
1796:=>
1787:foldl
1778:->
1772:Maybe
1744:Maybe
1728:Idris
1712:empty
1670:empty
1610:->
1595:foldl
1583:->
1577:Maybe
1545:Maybe
1507:|>
1504:empty
1492:|>
1477:empty
1441:->
1339:Maybe
1257:->
1101:empty
1053:empty
1017:main0
1005:=>
984:=>
854:false
755:justa
747:Maybe
622:monad
269:is a
261:, an
138:JSTOR
124:books
4588:Kind
4550:Void
4410:List
4325:Text
4163:Word
4153:Trit
4148:Byte
3971:2019
3785:free
3698:free
3683:full
3653:null
3632:full
3512:heap
3488:void
3479:main
3452:dupe
3443:else
3295:null
3291:else
3277:else
3227:?i32
3160:full
3112:full
3034:func
3005:some
2999:none
2996:case
2990:>
2984:<
2978:enum
2952:SOME
2946:NONE
2825:full
2804:None
2783:Some
2777:full
2768:Unit
2756:args
2750:main
2714:fold
2675:Main
2664:None
2658:case
2655:and
2637:Some
2631:case
2554:full
2530:None
2509:Some
2503:full
2491:main
2421:>
2415:<
2379:Some
2373:None
2367:>
2361:<
2355:enum
2342:Rust
2302:full
2281:None
2263:Some
2257:full
2215:some
2203:none
2197:fold
2165:Some
2159:None
2144:type
2097:echo
2091:full
2076:echo
2064:none
2046:some
2040:full
1986:proc
1947:proc
1838:Just
1833:full
1823:main
1812:main
1757:Just
1741:data
1694:full
1661:Just
1655:full
1643:main
1631:main
1619:show
1560:Just
1542:data
1489:full
1483:None
1468:Some
1462:full
1426:fold
1348:Just
1336:type
1269:None
1248:Some
1239:Type
1230:Type
1160:>
1154:<
1142:>
1133:<
1080:full
1059:None
1044:Some
1038:full
1026:void
993:Some
978:None
963:case
842:None
827:true
815:Some
803:bool
753:and
700:Agda
662:Just
635:Just
389:not
276:None
110:news
4447:Set
4143:Bit
3830:});
3797:try
3755:try
3743:});
3710:try
3668:try
3623:();
3617:().
3602:std
3587:();
3578:gpa
3545:gpa
3527:std
3506:std
3500:gpa
3497:var
3473:pub
3410:fmt
3404:std
3389:opt
3365:i32
3356:opt
3344:mem
3338:std
3305:std
3283:...
3271:...
3253:opt
3240:or
3215:Zig
3139:nil
3130:Int
3121:let
3109:let
3088:$ 0
3076:map
3070:opt
3052:Int
3046:opt
2909:.
2849:$ {
2816:$ {
2795:val
2774:val
2747:def
2708:opt
2690:opt
2681:def
2581:));
2557:));
2521:let
2500:let
2455:(),
2434:opt
2418:i32
2408:opt
2272:let
2254:let
2245:let
2221:fun
2182:let
2070:int
2037:let
2025:get
1998:int
1980:map
1974:opt
1956:opt
1938:std
1911:.
1888:Nim
1844:let
1831:let
1775:Int
1667:let
1652:let
1580:Int
1474:let
1459:let
1432:fun
1411:let
1387:.
1311:.
1288:Elm
1190:.
1167:Coq
1145:std
1123:C++
1107:end
1050:and
1035:val
1032:let
969:opt
951:int
942:opt
893:ype
797:ype
761:ATS
723:.
508:In
454:by
325:).
294:).
290:or
278:or
265:or
249:In
195:by
93:by
4657::
4078:.
4053:.
4029:.
4005:.
3987:.
3961:.
3957:.
3932:.
3903:.
3824:.{
3815:\n
3794:);
3773:);
3737:.{
3728:\n
3707:);
3686:);
3638:42
3608:io
3566:);
3563:ok
3557:==
3554:()
3482:()
3476:fn
3467:);
3458:u8
3440:})
3434:.{
3383:if
3374:u8
3323:fn
3320:);
3297:.
3247:if
3238:if
3193:))
3181:\(
3163:))
3151:\(
3118:42
3100:??
3085:\(
3055:?)
3029:.
2961:.
2955:of
2789:42
2765:):
2735:$
2723:)(
2699:):
2667:.
2518:);
2515:42
2494:()
2488:fn
2482:))
2410::
2399:fn
2394:.
2305:);
2284:in
2269:in
2266:42
2248:()
2218::(
2177:.
2168:of
2052:42
2022:).
2016:$
2001:):
1965:):
1871:++
1865:$
1861:++
1855:$
1841:42
1828:do
1821:()
1818:IO
1802:++
1794:,x
1789:(\
1761:.
1706:++
1700:$
1688:++
1682:$
1664:42
1649:do
1640:()
1637:IO
1634:::
1616:++
1574:::
1566:.
1471:42
1364:F#
1360:.
1284:.
1242::=
1163:.
1148:::
1104:);
1089:!(
1083:);
1068:!(
1062:in
1047:42
1020:()
981:()
972:of
954:):
933:fn
833:of
800:+,
757:.
599:.
362:.
321:=
313:≠
307:A?
55:.
4119:e
4112:t
4105:v
4088:.
4064:.
4039:.
4015:.
3991:.
3973:.
3942:.
3918:.
3833:}
3821:,
3809:(
3803:.
3788:(
3782:.
3767:,
3761:(
3752:=
3734:,
3722:(
3716:.
3701:(
3695:.
3680:,
3674:(
3665:=
3656:;
3650:=
3641:;
3635:=
3611:.
3605:.
3599:=
3581:.
3575:=
3560:.
3548:.
3542:(
3536:.
3530:.
3515:.
3509:.
3503:=
3491:{
3485:!
3470:}
3461:,
3455:(
3449:.
3437:n
3431:,
3425:,
3419:(
3413:.
3407:.
3401:|
3398:n
3395:|
3392:)
3386:(
3377:{
3371:!
3368:)
3362:?
3359::
3353:,
3347:.
3341:.
3335::
3329:(
3314:(
3308:=
3286:}
3280:{
3274:}
3268:{
3265:|
3262:n
3259:|
3256:)
3250:(
3234:n
3199:)
3187:(
3175:(
3169:)
3157:(
3145:(
3136:=
3133:?
3127::
3115:=
3106:}
3097:}
3091:)
3079:{
3073:.
3064:{
3049::
3043:_
3040:(
3026:?
3023:T
3017:}
3014:)
3011:T
3008:(
3002:,
2993:{
2987:T
2949:|
2943:=
2916:)
2912:(
2870:)
2864:}
2861:)
2855:(
2843:(
2837:)
2831:}
2828:)
2822:(
2810:(
2801:=
2792:)
2786:(
2780:=
2771:=
2759::
2753:(
2744:)
2738:x
2726:x
2717:(
2711:.
2705:=
2693::
2687:(
2678::
2652:)
2649:A
2646::
2640:(
2584:}
2575:(
2569:,
2563:(
2551:(
2545:,
2539:(
2533:;
2527:=
2512:(
2506:=
2497:{
2485:}
2479:x
2476:,
2470:(
2464:|
2461:x
2458:|
2449:.
2443:(
2437:.
2431:{
2424:)
2405:(
2391:}
2388:)
2385:T
2382:(
2376:,
2370:{
2364:T
2326:)
2317:^
2311:(
2296:^
2290:(
2278:=
2260:=
2251:=
2242:)
2239:x
2233:^
2224:x
2212:~
2206::
2200:~
2194:.
2188:=
2174:a
2162:|
2156:=
2150:a
2115:)
2109:(
2103:,
2094:)
2088:(
2082:,
2073:)
2067:(
2061:=
2055:)
2049:(
2043:=
2034:)
2028:(
2019:x
2007:=
1995::
1992:x
1989:(
1983:(
1977:.
1971:=
1959::
1953:(
1941:/
1918:)
1914:(
1848:=
1835:=
1825:=
1815::
1806:)
1792:_
1785:=
1769::
1759:a
1754:|
1748:=
1746:a
1673:=
1658:=
1646:=
1625:)
1622:x
1607:x
1604:_
1601:\
1598:(
1592:=
1563:a
1557:|
1551:=
1548:a
1480:=
1465:=
1453:)
1450:x
1438:x
1435:_
1429:(
1423:.
1417:=
1394:)
1390:(
1354:|
1351:a
1345:=
1342:a
1318:)
1314:(
1281:.
1278:A
1272::
1266:|
1263:A
1254:A
1251::
1245:|
1236::
1233:)
1227::
1224:A
1221:(
1197:)
1193:(
1157:T
1139:T
1095:,
1074:,
1056:=
1041:=
1029:=
1023::
1011:s
1002:)
999:s
996:(
990:|
975:|
966:+
960:=
945::
939:(
924:#
917:)
914:b
911:,
908:a
905:(
899:=
896:)
890:@
887:t
884::
881:a
878:(
866:=
857:)
851:,
848:a
845:(
839:|
836:a
830:)
824:,
821:a
818:(
812:|
809:=
806:)
794:@
791:t
788::
785:a
782:(
730:)
726:(
683:x
680:f
677:=
674:f
668:)
665:x
659:(
650:=
647:f
632:=
579:A
559:A
539:1
536:+
533:A
530:=
525:?
521:A
499:)
493:(
481:)
475:(
470:)
466:(
448:.
419:)
413:(
408:)
404:(
400:.
369:)
365:(
284:A
240:)
234:(
222:)
216:(
211:)
207:(
189:.
160:)
154:(
149:)
145:(
135:·
128:·
121:·
114:·
87:.
62:)
58:(
23:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.