40:
3423:
3395:
314:
takes advantage of the uniqueness type system to generate more efficient code, because it knows that at any point during the execution of the program, only one reference can exist to a value with a unique type. Therefore, a unique value can be
834:. Constants such as numbers are graphs and functions are graph rewriting formulas. This, combined with compiling to native code, makes Clean programs which use high abstraction run relatively fast according to
254:
in
Nijmegen since 1987. Although development of the language has slowed, some researchers are still working in the language. In 2018, a spin-off company was founded that uses Clean.
926:
The B(asic value)-stack holds basic values (integers, characters, reals, etc.). Although these values could be nodes in the graph store, a separate stack is used for efficiency.
2888:
2903:
3127:
3467:
2998:
Staps, Camil; van
Groningen, John; Plasmeijer, Rinus (15 July 2021). "Lazy interworking of compiled and interpreted code for sandboxing and distributed systems".
2858:
3452:
2870:
3411:
3457:
862:
Source files (.icl) and definition files (.dcl) are translated into Core Clean, a basic variant of Clean, by the compiler frontend written in Clean.
3416:
3462:
3406:
911:. Because machine code generation for ABC code is relatively straightforward, it is easy to support new architectures. The ABC machine is an
835:
283:
233:
3147:
3120:
323:
865:
Core clean is converted into Clean's platform-independent intermediate language (.abc), by the compiler backend written in Clean and
3152:
3015:
879:
Object code is linked with other files in the module and the runtime system and converted into a normal executable using the system
3157:
2957:
2713:
2231:
The syntax of Clean is very similar to that of
Haskell, with some notable differences. In general, Haskell has introduced more
3426:
3358:
3231:
3113:
307:
263:
201:
2731:
3447:
3401:
3379:
3333:
3306:
3281:
3241:
236:
3373:
3276:
3246:
221:
2749:
3348:
3343:
3286:
3266:
904:
802:
The type declaration states that the function is a right associative infix operator with priority 8: this states that
94:
65:
3291:
3187:
3170:
3301:
3256:
3338:
3221:
949:
Although Clean is typically used to generate native executables, several projects have enabled applications in
892:
873:
866:
843:
271:
1016:
which is only available on
Windows. Also the feature to write dynamics to files is only available on Windows.
941:
node in the graph store and pushes it on the A-stack. It then begins printing it, evaluating it as needed.
39:
3207:
912:
287:
157:
125:
52:
2921:
919:
machine. It consists of a graph store to hold the Clean graph that is being rewritten and three stacks:
839:
2692:
3136:
239:
47:
3212:
2432:
338:
3021:
2288:
880:
492:
316:
275:
251:
164:
3192:
3011:
2953:
2882:
1013:
974:
327:
279:
3003:
908:
815:
152:
140:
3000:
Proceedings of the 31st
Symposium on Implementation and Application of Functional Languages
2934:
2667:
2232:
916:
831:
827:
303:
295:
59:
17:
872:
Intermediate ABC code is converted to object code (.o) by the code generator written in
1071:
1041:
934:
699:
145:
133:
2973:
3441:
3311:
3025:
2717:
129:
3363:
3202:
855:
299:
2735:
962:
950:
120:
3271:
2037:
961:
and did not use ABC code. Since 2019, an interpreter for ABC code, written in
958:
3368:
3007:
2859:
ftp://ftp.cs.ru.nl/pub/Clean/papers/2007/achp2007-CleanHaskellQuickGuide.pdf
2753:
923:
The A(rgument)-stack holds arguments that refer to nodes in the graph store.
357:
3039:
311:
291:
3105:
3261:
3251:
2768:"Radboud University Nijmegen: Department of Software Science: Software"
1076:
1066:
1046:
1006:
884:
267:
217:
205:
2806:
3328:
3296:
3180:
2767:
2162:
1993:
1938:
1805:
1096:
1081:
1061:
1002:
990:
982:
3226:
3236:
3197:
3175:
2217:
2213:
2170:
2166:
1946:
1942:
1852:
1848:
1091:
1086:
1056:
1036:
1031:
998:
994:
986:
978:
891:
Earlier versions of the Clean compiler were written completely in
2781:
1019:
The availability of Clean per platform varies with each version:
3318:
2316:
2158:
1989:
1934:
1801:
3109:
2902:
Jansen, Jan Martin; Koopman, Pieter; Plasmeijer, Rinus (2008).
2831:
3353:
3323:
3088:
3064:
954:
929:
The C(ontrol)-stack holds return addresses for flow control.
883:(when available) or a dedicated linker written in Clean on
250:, it has been developed by a group of researchers from the
197:
3093:
1012:
Some libraries are not available on all platforms, like
842:
showed that Clean native code performs similarly to the
178:
3099:
2952:(PhD). Katholieke Universiteit Nijmegen. p. 35.
814:. This operator is pre-defined in StdEnv, the Clean
2854:
2852:
2237:
211:
191:
173:
163:
151:
139:
119:
93:
71:
58:
46:
937:, which is linked into every executable, builds a
2950:Functional Programs as Executable Specifications
2887:: CS1 maint: bot: original URL status unknown (
298:. However, Clean deals with mutable state and
3121:
3102:: a search engine to search in Clean packages
2974:"Clean and iTasks / ABC Interpreter ยท GitLab"
2877:. Archived from the original on 28 June 2011.
8:
32:
3394:
3128:
3114:
3106:
2871:"Which programming languages are fastest?"
1021:
31:
306:system, in contrast to Haskell's use of
2659:
330:is included in the Clean distribution.
2930:
2919:
2880:
895:, thus avoiding bootstrapping issues.
64:Software Technology Research Group of
3468:Programming languages created in 1987
3096:: public registry with Clean packages
836:The Computer Language Benchmarks Game
7:
3453:Term-rewriting programming languages
2948:Koopman, Pieter (10 December 1990).
2904:"From Interpretation to Compilation"
471:// The product of the numbers 1 to n
903:The ABC code mentioned above is an
846:(GHC), depending on the benchmark.
324:integrated development environment
25:
2875:Computer Language Benchmarks Game
266:with a younger sibling language,
262:Clean shares many properties and
3422:
3421:
3393:
38:
3458:Free compilers and interpreters
957:project compiled Core Clean to
27:Functional programming language
2499:class assertions and contexts
1:
499:
364:
3463:Cross-platform free software
945:Running Clean in the browser
100:3.1 / 5 January 2022
905:intermediate representation
77:; 37 years ago
66:Radboud University Nijmegen
3484:
2978:Clean and iTasks on GitLab
2693:"Idris - Uniqueness Types"
18:Clean programming language
3389:
3166:
3143:
1050:
1045:
1035:
1030:
1027:
1024:
858:is performed as follows:
352:"Hello, world!"
216:
196:
115:
89:
37:
2617:
2587:
2543:
2504:
2472:
2439:
2378:
2324:
2310:
2295:
2270:
2252:
854:Compilation of Clean to
844:Glasgow Haskell Compiler
704:
606:
501:
441:
366:
343:
272:referential transparency
242:. Originally called the
3008:10.1145/3412932.3412941
2836:TOP Software Technology
973:Clean is available for
244:Concurrent Clean System
2929:Cite journal requires
826:Computing is based on
288:higher order functions
3137:Programming languages
2227:Comparison to Haskell
102:; 2 years ago
3448:Functional languages
953:. The now abandoned
240:programming language
2750:"Clean 1.3: Readme"
2732:"Clean 1.0: Readme"
2714:"Clean 0.7: Readme"
2433:algebraic data type
965:, is used instead.
165:Filename extensions
72:First appeared
34:
2289:list comprehension
493:Fibonacci sequence
284:garbage collection
276:list comprehension
252:Radboud University
3435:
3434:
3417:Non-English-based
3065:"Index of /Clean"
3040:"Release history"
3002:. pp. 1โ12.
2756:on 27 April 2019.
2651:
2650:
2224:
2223:
1497:13 September 2000
975:Microsoft Windows
806:is equivalent to
697:
696:
490:
489:
328:Microsoft Windows
237:purely functional
227:
226:
121:Typing discipline
16:(Redirected from
3475:
3425:
3424:
3397:
3396:
3130:
3123:
3116:
3107:
3076:
3075:
3073:
3071:
3061:
3055:
3054:
3052:
3050:
3036:
3030:
3029:
2995:
2989:
2988:
2986:
2984:
2970:
2964:
2963:
2945:
2939:
2938:
2932:
2927:
2925:
2917:
2915:
2913:
2908:
2899:
2893:
2892:
2886:
2878:
2867:
2861:
2856:
2847:
2846:
2844:
2842:
2828:
2822:
2821:
2819:
2817:
2803:
2797:
2796:
2794:
2792:
2778:
2772:
2771:
2764:
2758:
2757:
2752:. Archived from
2746:
2740:
2739:
2734:. Archived from
2728:
2722:
2721:
2716:. Archived from
2710:
2704:
2703:
2701:
2699:
2689:
2683:
2682:
2680:
2678:
2668:"Download Clean"
2664:
2642:
2639:
2636:
2633:
2630:
2627:
2624:
2621:
2612:
2609:
2606:
2603:
2600:
2597:
2594:
2591:
2577:
2574:
2571:
2568:
2565:
2562:
2559:
2556:
2553:
2550:
2547:
2538:
2535:
2532:
2529:
2526:
2523:
2520:
2517:
2514:
2511:
2508:
2494:
2491:
2488:
2485:
2482:
2479:
2476:
2467:
2464:
2461:
2458:
2455:
2452:
2449:
2446:
2443:
2427:
2424:
2421:
2418:
2415:
2412:
2409:
2406:
2403:
2400:
2397:
2394:
2391:
2388:
2385:
2382:
2373:
2370:
2367:
2364:
2361:
2358:
2355:
2352:
2349:
2346:
2343:
2340:
2337:
2334:
2331:
2328:
2305:
2302:
2299:
2283:
2280:
2277:
2274:
2265:
2262:
2259:
2256:
2238:
2183:
2128:
2089:
2050:
2049:26 February 1993
2006:
1959:
1904:
1865:
1818:
1771:
1732:
1693:
1654:
1615:
1576:
1537:
1498:
1459:
1458:21 December 2001
1420:
1381:
1380:12 December 2002
1342:
1303:
1264:
1263:19 December 2006
1225:
1224:22 December 2010
1186:
1185:23 December 2011
1147:
1108:
1022:
940:
909:abstract machine
816:standard library
813:
809:
805:
798:
795:
792:
789:
786:
783:
780:
777:
774:
771:
768:
765:
762:
759:
756:
753:
750:
747:
744:
741:
738:
735:
732:
729:
726:
723:
720:
717:
714:
711:
708:
691:
688:
685:
682:
679:
676:
673:
670:
667:
664:
661:
658:
655:
652:
649:
646:
643:
640:
637:
634:
631:
628:
625:
622:
619:
616:
613:
610:
601:
598:
595:
592:
589:
586:
583:
580:
577:
574:
571:
568:
565:
562:
559:
556:
553:
550:
547:
544:
541:
538:
535:
532:
529:
526:
523:
520:
517:
514:
511:
508:
505:
498:
497:
484:
481:
478:
475:
472:
469:
466:
463:
460:
457:
454:
451:
448:
445:
436:
433:
430:
427:
424:
421:
418:
415:
412:
409:
406:
403:
400:
397:
394:
391:
388:
385:
382:
379:
376:
373:
370:
363:
362:
353:
350:
347:
317:changed in place
302:(I/O) through a
187:
184:
182:
180:
169:.icl, .dcl, .abc
110:
108:
103:
85:
83:
78:
60:Designed by
42:
35:
21:
3483:
3482:
3478:
3477:
3476:
3474:
3473:
3472:
3438:
3437:
3436:
3431:
3385:
3162:
3139:
3134:
3085:
3080:
3079:
3069:
3067:
3063:
3062:
3058:
3048:
3046:
3038:
3037:
3033:
3018:
2997:
2996:
2992:
2982:
2980:
2972:
2971:
2967:
2960:
2947:
2946:
2942:
2928:
2918:
2911:
2909:
2906:
2901:
2900:
2896:
2879:
2869:
2868:
2864:
2857:
2850:
2840:
2838:
2830:
2829:
2825:
2815:
2813:
2805:
2804:
2800:
2790:
2788:
2780:
2779:
2775:
2766:
2765:
2761:
2748:
2747:
2743:
2730:
2729:
2725:
2720:on 24 May 2019.
2712:
2711:
2707:
2697:
2695:
2691:
2690:
2686:
2676:
2674:
2666:
2665:
2661:
2656:
2644:
2643:
2640:
2637:
2634:
2631:
2628:
2625:
2622:
2619:
2614:
2613:
2610:
2607:
2604:
2601:
2598:
2595:
2592:
2589:
2579:
2578:
2575:
2572:
2569:
2566:
2563:
2560:
2557:
2554:
2551:
2548:
2545:
2540:
2539:
2536:
2533:
2530:
2527:
2524:
2521:
2518:
2515:
2512:
2509:
2506:
2496:
2495:
2492:
2489:
2486:
2483:
2480:
2477:
2474:
2469:
2468:
2465:
2462:
2459:
2456:
2453:
2450:
2447:
2444:
2441:
2429:
2428:
2425:
2422:
2419:
2416:
2413:
2410:
2407:
2404:
2401:
2398:
2395:
2392:
2389:
2386:
2383:
2380:
2375:
2374:
2371:
2368:
2365:
2362:
2359:
2356:
2353:
2350:
2347:
2344:
2341:
2338:
2335:
2332:
2329:
2326:
2313:
2312:
2307:
2306:
2303:
2300:
2297:
2285:
2284:
2281:
2278:
2275:
2272:
2267:
2266:
2263:
2260:
2257:
2254:
2233:syntactic sugar
2229:
2181:
2126:
2088:19 October 1992
2087:
2048:
2038:T800 transputer
2004:
1957:
1902:
1863:
1816:
1769:
1731:13 January 1997
1730:
1691:
1652:
1613:
1574:
1535:
1496:
1457:
1418:
1379:
1341:31 October 2003
1340:
1301:
1262:
1223:
1184:
1145:
1106:
971:
947:
938:
917:graph rewriting
901:
899:The ABC machine
852:
828:graph rewriting
824:
822:How Clean works
811:
807:
803:
800:
799:
796:
793:
790:
787:
784:
781:
778:
775:
772:
769:
766:
763:
760:
757:
754:
751:
748:
745:
742:
739:
736:
733:
730:
727:
724:
721:
718:
715:
712:
709:
706:
693:
692:
689:
686:
683:
680:
677:
674:
671:
668:
665:
662:
659:
656:
653:
650:
647:
644:
641:
638:
635:
632:
629:
626:
623:
620:
617:
614:
611:
608:
603:
602:
599:
596:
593:
590:
587:
584:
581:
578:
575:
572:
569:
566:
563:
560:
557:
554:
551:
548:
545:
542:
539:
536:
533:
530:
527:
524:
521:
518:
515:
512:
509:
506:
503:
486:
485:
482:
479:
476:
473:
470:
467:
464:
461:
458:
455:
452:
449:
446:
443:
438:
437:
434:
431:
428:
425:
422:
419:
416:
413:
410:
407:
404:
401:
398:
395:
392:
389:
386:
383:
380:
377:
374:
371:
368:
355:
354:
351:
348:
345:
336:
304:uniqueness type
296:lazy evaluation
260:
234:general-purpose
177:
111:
106:
104:
101:
81:
79:
76:
28:
23:
22:
15:
12:
11:
5:
3481:
3479:
3471:
3470:
3465:
3460:
3455:
3450:
3440:
3439:
3433:
3432:
3430:
3429:
3419:
3414:
3409:
3404:
3390:
3387:
3386:
3384:
3383:
3376:
3371:
3366:
3361:
3356:
3351:
3346:
3341:
3336:
3331:
3326:
3321:
3316:
3315:
3314:
3304:
3299:
3294:
3289:
3284:
3279:
3274:
3269:
3264:
3259:
3254:
3249:
3244:
3239:
3234:
3229:
3224:
3219:
3218:
3217:
3216:
3215:
3210:
3195:
3190:
3185:
3184:
3183:
3173:
3167:
3164:
3163:
3161:
3160:
3155:
3150:
3144:
3141:
3140:
3135:
3133:
3132:
3125:
3118:
3110:
3104:
3103:
3097:
3094:clean-lang.org
3091:
3084:
3083:External links
3081:
3078:
3077:
3056:
3031:
3016:
2990:
2965:
2958:
2940:
2931:|journal=
2894:
2862:
2848:
2823:
2807:"Publications"
2798:
2773:
2759:
2741:
2738:on 5 May 2019.
2723:
2705:
2684:
2658:
2657:
2655:
2652:
2649:
2648:
2645:
2618:
2615:
2588:
2584:
2583:
2580:
2544:
2541:
2505:
2501:
2500:
2497:
2473:
2470:
2440:
2436:
2435:
2430:
2379:
2376:
2325:
2321:
2320:
2314:
2311:
2308:
2296:
2292:
2291:
2286:
2271:
2268:
2253:
2249:
2248:
2245:
2242:
2228:
2225:
2222:
2221:
2211:
2208:
2205:
2202:
2199:
2196:
2193:
2190:
2187:
2184:
2179:
2175:
2174:
2156:
2153:
2150:
2147:
2144:
2141:
2138:
2135:
2132:
2129:
2124:
2120:
2119:
2117:
2114:
2111:
2108:
2105:
2102:
2099:
2096:
2093:
2090:
2085:
2081:
2080:
2078:
2075:
2072:
2069:
2066:
2063:
2060:
2057:
2054:
2051:
2046:
2042:
2041:
2034:
2031:
2028:
2025:
2022:
2019:
2016:
2013:
2010:
2007:
2002:
1998:
1997:
1987:
1984:
1981:
1978:
1975:
1972:
1969:
1966:
1963:
1960:
1955:
1951:
1950:
1932:
1929:
1926:
1923:
1920:
1917:
1914:
1911:
1908:
1905:
1903:September 1995
1900:
1896:
1895:
1893:
1890:
1887:
1884:
1881:
1878:
1875:
1872:
1869:
1866:
1861:
1857:
1856:
1846:
1843:
1840:
1837:
1834:
1831:
1828:
1825:
1822:
1819:
1817:September 1996
1814:
1810:
1809:
1799:
1796:
1793:
1790:
1787:
1784:
1781:
1778:
1775:
1772:
1767:
1763:
1762:
1760:
1757:
1754:
1751:
1748:
1745:
1742:
1739:
1736:
1733:
1728:
1724:
1723:
1721:
1718:
1715:
1712:
1709:
1706:
1703:
1700:
1697:
1694:
1689:
1685:
1684:
1682:
1679:
1676:
1673:
1670:
1667:
1664:
1661:
1658:
1655:
1650:
1646:
1645:
1643:
1640:
1637:
1634:
1631:
1628:
1625:
1622:
1619:
1616:
1611:
1607:
1606:
1604:
1601:
1598:
1595:
1592:
1589:
1586:
1583:
1580:
1577:
1572:
1568:
1567:
1565:
1562:
1559:
1556:
1553:
1550:
1547:
1544:
1541:
1538:
1533:
1529:
1528:
1526:
1523:
1520:
1517:
1514:
1511:
1508:
1505:
1502:
1499:
1494:
1490:
1489:
1487:
1484:
1481:
1478:
1475:
1472:
1469:
1466:
1463:
1460:
1455:
1451:
1450:
1448:
1445:
1442:
1439:
1436:
1433:
1430:
1427:
1424:
1421:
1416:
1412:
1411:
1409:
1406:
1403:
1400:
1397:
1394:
1391:
1388:
1385:
1382:
1377:
1373:
1372:
1370:
1367:
1364:
1361:
1358:
1355:
1352:
1349:
1346:
1343:
1338:
1334:
1333:
1331:
1328:
1325:
1322:
1319:
1316:
1313:
1310:
1307:
1304:
1299:
1295:
1294:
1292:
1289:
1286:
1283:
1280:
1277:
1274:
1271:
1268:
1265:
1260:
1256:
1255:
1253:
1250:
1247:
1244:
1241:
1238:
1235:
1232:
1229:
1226:
1221:
1217:
1216:
1214:
1211:
1208:
1205:
1202:
1199:
1196:
1193:
1190:
1187:
1182:
1178:
1177:
1175:
1172:
1169:
1166:
1163:
1160:
1157:
1154:
1151:
1148:
1146:2 October 2018
1143:
1139:
1138:
1136:
1133:
1130:
1127:
1124:
1121:
1118:
1115:
1112:
1109:
1107:5 January 2022
1104:
1100:
1099:
1094:
1089:
1084:
1079:
1074:
1072:Motorola 68040
1069:
1064:
1059:
1053:
1052:
1051:Miscellaneous
1049:
1044:
1042:Oracle Solaris
1039:
1034:
1029:
1026:
970:
967:
946:
943:
935:runtime system
931:
930:
927:
924:
900:
897:
889:
888:
877:
870:
863:
851:
848:
823:
820:
810:as opposed to
705:
695:
694:
607:
604:
502:
488:
487:
442:
439:
367:
344:
335:
332:
259:
256:
225:
224:
214:
213:
209:
208:
194:
193:
189:
188:
175:
171:
170:
167:
161:
160:
158:Simplified BSD
155:
149:
148:
146:Cross-platform
143:
137:
136:
123:
117:
116:
113:
112:
99:
97:
95:Stable release
91:
90:
87:
86:
73:
69:
68:
62:
56:
55:
50:
44:
43:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
3480:
3469:
3466:
3464:
3461:
3459:
3456:
3454:
3451:
3449:
3446:
3445:
3443:
3428:
3420:
3418:
3415:
3413:
3410:
3408:
3405:
3403:
3400:
3392:
3391:
3388:
3382:
3381:
3377:
3375:
3372:
3370:
3367:
3365:
3362:
3360:
3357:
3355:
3352:
3350:
3347:
3345:
3342:
3340:
3337:
3335:
3332:
3330:
3327:
3325:
3322:
3320:
3317:
3313:
3312:Object Pascal
3310:
3309:
3308:
3305:
3303:
3300:
3298:
3295:
3293:
3290:
3288:
3285:
3283:
3280:
3278:
3275:
3273:
3270:
3268:
3265:
3263:
3260:
3258:
3255:
3253:
3250:
3248:
3245:
3243:
3240:
3238:
3235:
3233:
3230:
3228:
3225:
3223:
3220:
3214:
3211:
3209:
3206:
3205:
3204:
3201:
3200:
3199:
3196:
3194:
3191:
3189:
3186:
3182:
3179:
3178:
3177:
3174:
3172:
3169:
3168:
3165:
3159:
3156:
3154:
3151:
3149:
3146:
3145:
3142:
3138:
3131:
3126:
3124:
3119:
3117:
3112:
3111:
3108:
3101:
3098:
3095:
3092:
3090:
3087:
3086:
3082:
3066:
3060:
3057:
3045:
3041:
3035:
3032:
3027:
3023:
3019:
3017:9781450375627
3013:
3009:
3005:
3001:
2994:
2991:
2979:
2975:
2969:
2966:
2961:
2955:
2951:
2944:
2941:
2936:
2923:
2905:
2898:
2895:
2890:
2884:
2876:
2872:
2866:
2863:
2860:
2855:
2853:
2849:
2837:
2833:
2827:
2824:
2812:
2808:
2802:
2799:
2787:
2783:
2777:
2774:
2769:
2763:
2760:
2755:
2751:
2745:
2742:
2737:
2733:
2727:
2724:
2719:
2715:
2709:
2706:
2694:
2688:
2685:
2673:
2669:
2663:
2660:
2653:
2646:
2616:
2586:
2585:
2581:
2542:
2503:
2502:
2498:
2471:
2438:
2437:
2434:
2431:
2377:
2323:
2322:
2318:
2315:
2309:
2294:
2293:
2290:
2287:
2269:
2251:
2250:
2246:
2243:
2240:
2239:
2236:
2234:
2226:
2219:
2215:
2212:
2209:
2206:
2203:
2200:
2197:
2194:
2191:
2188:
2185:
2180:
2177:
2176:
2172:
2168:
2164:
2160:
2157:
2154:
2151:
2148:
2145:
2142:
2139:
2136:
2133:
2130:
2125:
2122:
2121:
2118:
2115:
2112:
2109:
2106:
2103:
2100:
2097:
2094:
2091:
2086:
2083:
2082:
2079:
2076:
2073:
2070:
2067:
2064:
2061:
2058:
2055:
2052:
2047:
2044:
2043:
2039:
2036:Experimental
2035:
2032:
2029:
2026:
2023:
2020:
2017:
2014:
2011:
2008:
2003:
2000:
1999:
1995:
1991:
1988:
1985:
1982:
1979:
1976:
1973:
1970:
1967:
1964:
1961:
1956:
1953:
1952:
1948:
1944:
1940:
1936:
1933:
1930:
1927:
1924:
1921:
1918:
1915:
1912:
1909:
1906:
1901:
1898:
1897:
1894:
1891:
1888:
1885:
1882:
1879:
1876:
1873:
1870:
1867:
1862:
1859:
1858:
1854:
1850:
1847:
1844:
1841:
1838:
1835:
1832:
1829:
1826:
1823:
1820:
1815:
1812:
1811:
1807:
1803:
1800:
1797:
1794:
1791:
1788:
1785:
1782:
1779:
1776:
1773:
1768:
1765:
1764:
1761:
1758:
1755:
1752:
1749:
1746:
1743:
1740:
1737:
1734:
1729:
1726:
1725:
1722:
1719:
1716:
1713:
1710:
1707:
1704:
1701:
1698:
1695:
1690:
1687:
1686:
1683:
1680:
1677:
1674:
1671:
1668:
1665:
1662:
1659:
1656:
1651:
1648:
1647:
1644:
1641:
1638:
1635:
1632:
1629:
1626:
1623:
1620:
1617:
1612:
1609:
1608:
1605:
1602:
1599:
1596:
1593:
1590:
1587:
1584:
1581:
1578:
1573:
1570:
1569:
1566:
1563:
1560:
1557:
1554:
1551:
1548:
1545:
1542:
1539:
1534:
1531:
1530:
1527:
1524:
1521:
1518:
1515:
1512:
1509:
1506:
1503:
1500:
1495:
1492:
1491:
1488:
1485:
1482:
1479:
1476:
1473:
1470:
1467:
1464:
1461:
1456:
1453:
1452:
1449:
1446:
1443:
1440:
1437:
1434:
1431:
1428:
1425:
1422:
1417:
1414:
1413:
1410:
1407:
1404:
1401:
1398:
1395:
1392:
1389:
1386:
1383:
1378:
1375:
1374:
1371:
1368:
1365:
1362:
1359:
1356:
1353:
1350:
1347:
1344:
1339:
1336:
1335:
1332:
1329:
1326:
1323:
1320:
1317:
1314:
1311:
1308:
1305:
1300:
1297:
1296:
1293:
1290:
1287:
1284:
1281:
1278:
1275:
1272:
1269:
1266:
1261:
1258:
1257:
1254:
1251:
1248:
1245:
1242:
1239:
1236:
1233:
1230:
1227:
1222:
1219:
1218:
1215:
1212:
1209:
1206:
1203:
1200:
1197:
1194:
1191:
1188:
1183:
1180:
1179:
1176:
1173:
1170:
1167:
1164:
1161:
1158:
1155:
1152:
1149:
1144:
1141:
1140:
1137:
1134:
1131:
1128:
1125:
1122:
1119:
1116:
1113:
1110:
1105:
1102:
1101:
1098:
1095:
1093:
1090:
1088:
1085:
1083:
1080:
1078:
1075:
1073:
1070:
1068:
1065:
1063:
1060:
1058:
1055:
1054:
1048:
1043:
1040:
1038:
1033:
1023:
1020:
1017:
1015:
1010:
1008:
1004:
1000:
996:
992:
988:
984:
980:
976:
968:
966:
964:
960:
956:
952:
944:
942:
936:
928:
925:
922:
921:
920:
918:
914:
910:
906:
898:
896:
894:
886:
882:
878:
875:
871:
868:
864:
861:
860:
859:
857:
849:
847:
845:
841:
837:
833:
829:
821:
819:
817:
703:
701:
605:
500:
496:
494:
440:
365:
361:
359:
342:
340:
333:
331:
329:
325:
320:
318:
313:
309:
305:
301:
297:
293:
289:
285:
281:
277:
273:
269:
265:
257:
255:
253:
249:
245:
241:
238:
235:
231:
223:
219:
215:
210:
207:
203:
199:
195:
192:Influenced by
190:
186:
176:
172:
168:
166:
162:
159:
156:
154:
150:
147:
144:
142:
138:
135:
131:
127:
124:
122:
118:
114:
98:
96:
92:
88:
74:
70:
67:
63:
61:
57:
54:
51:
49:
45:
41:
36:
30:
19:
3412:Generational
3402:Alphabetical
3398:
3378:
3203:Visual Basic
3068:. Retrieved
3059:
3047:. Retrieved
3043:
3034:
2999:
2993:
2981:. Retrieved
2977:
2968:
2959:90-9003689-X
2949:
2943:
2922:cite journal
2910:. Retrieved
2897:
2874:
2865:
2839:. Retrieved
2835:
2826:
2814:. Retrieved
2810:
2801:
2789:. Retrieved
2785:
2776:
2762:
2754:the original
2744:
2736:the original
2726:
2718:the original
2708:
2696:. Retrieved
2687:
2675:. Retrieved
2671:
2662:
2582:as-patterns
2235:than Clean:
2230:
2127:13 July 1992
1770:October 1996
1575:January 1999
1018:
1011:
972:
951:web browsers
948:
932:
902:
890:
856:machine code
853:
825:
801:
698:
491:
356:
337:
321:
300:input/output
261:
248:Clean System
247:
243:
229:
228:
29:
3407:Categorical
3100:cloogle.org
2841:26 November
2816:26 November
2791:26 November
2698:20 November
2005:11 May 1993
1614:22 May 1998
1536:1 July 1999
1419:4 July 2002
1302:31 May 2005
963:WebAssembly
812:(x*x)^(n-1)
808:x*(x^(n-1))
339:Hello world
3442:Categories
3272:JavaScript
3148:Comparison
3089:Clean Wiki
2654:References
1864:March 1996
959:JavaScript
913:imperative
702:operator:
326:(IDE) for
212:Influenced
107:2022-01-05
53:functional
3369:Smalltalk
3070:7 January
3049:7 January
3026:202751977
2319:operator
1653:June 1997
969:Platforms
915:abstract
850:Compiling
840:benchmark
838:. A 2008
832:reduction
804:x*x^(n-1)
358:Factorial
3427:Category
3193:Assembly
3153:Timeline
2983:13 April
2883:cite web
2247:Remarks
2241:Haskell
2182:May 1991
2040:release
1958:May 1995
1692:May 1997
1025:Version
1014:ObjectIO
334:Examples
312:compiler
292:currying
258:Features
48:Paradigm
3380:more...
3359:Scratch
3262:Haskell
3252:Fortran
3208:classic
3158:History
2677:23 July
1077:PowerPC
1067:AArch64
1047:Windows
1007:AArch64
993:), and
907:for an
885:Windows
268:Haskell
246:or the
218:Haskell
206:Haskell
202:Miranda
174:Website
153:License
134:dynamic
105: (
80: (
3399:Lists:
3334:Python
3329:Prolog
3307:Pascal
3297:MATLAB
3282:Kotlin
3242:Erlang
3181:Simula
3024:
3014:
2956:
2912:21 May
2832:"Home"
2244:Clean
2163:i80386
1994:i80386
1939:i80386
1806:i80386
1097:x86-64
1082:x86-64
1062:x86-64
1005:, and
1003:X86-64
991:X86-64
983:X86-64
881:linker
716:infixr
310:. The
308:monads
294:, and
280:guards
264:syntax
130:static
126:strong
3374:Swift
3364:Shell
3277:Julia
3247:Forth
3237:COBOL
3198:BASIC
3176:ALGOL
3044:Clean
3022:S2CID
2907:(PDF)
2811:Clean
2786:Clean
2782:"FAQ"
2672:Clean
2487:&
2463:=>
2393:Empty
2339:Empty
2276:isOdd
2258:isOdd
2218:SPARC
2216:3โ4 (
2214:SunOS
2171:SPARC
2169:3โ4 (
2167:SunOS
2084:0.8.1
2045:0.8.3
2001:0.8.4
1947:SPARC
1943:SunOS
1899:1.0.2
1853:SPARC
1849:SunOS
1813:1.1.2
1766:1.1.3
1688:1.2.3
1649:1.2.4
1571:1.3.1
1532:1.3.2
1493:1.3.3
1415:2.0.1
1376:2.0.2
1337:2.1.0
1298:2.1.1
1092:IA-32
1087:SPARC
1057:IA-32
1037:macOS
1032:Linux
1028:Date
999:IA-32
995:Linux
987:macOS
979:IA-32
939:Start
731:->
700:Infix
681:Start
645:->
621:->
591:Start
513:->
474:Start
453:->
426:Start
378:->
346:Start
232:is a
230:Clean
222:Idris
179:clean
33:Clean
3349:Rust
3344:Ruby
3319:Perl
3287:Lisp
3267:Java
3213:.NET
3072:2022
3051:2022
3012:ISBN
2985:2023
2954:ISBN
2935:help
2914:2016
2889:link
2843:2021
2818:2021
2793:2021
2700:2018
2679:2019
2629:>
2608:else
2602:then
2596:>
2558:Node
2519:Node
2420:Tree
2405:Tree
2399:Node
2384:Tree
2366:Tree
2351:Tree
2345:Node
2330:Tree
2327:data
2317:cons
2159:OS/2
1990:OS/2
1935:OS/2
1925:Yes
1839:Yes
1802:OS/2
1792:Yes
1636:Yes
1597:Yes
1558:Yes
1519:Yes
1441:Yes
1402:Yes
1363:Yes
1324:Yes
1291:Yes
1285:Yes
1252:Yes
1213:Yes
1204:Yes
1174:Yes
1165:Yes
1135:Yes
1126:Yes
1117:Yes
981:and
955:SAPL
933:The
830:and
663:fibs
624:fibs
609:fibs
468:prod
198:Lean
82:1987
75:1987
3354:SQL
3324:PHP
3292:Lua
3227:C++
3188:APL
3171:Ada
3004:doi
2647:if
2576:...
2546:fun
2537:...
2507:fun
2475:...
2466:...
2210:No
2204:No
2201:No
2195:Yes
2192:No
2178:0.7
2165:);
2155:No
2149:No
2146:No
2140:Yes
2137:No
2123:0.8
2116:No
2110:No
2107:No
2101:Yes
2098:No
2077:No
2071:No
2068:No
2062:Yes
2059:No
2033:No
2027:No
2024:No
2018:Yes
2015:No
2009:Yes
1986:No
1980:No
1977:No
1971:Yes
1968:No
1954:1.0
1945:4 (
1941:);
1931:No
1922:No
1916:Yes
1913:No
1907:Yes
1892:No
1886:No
1883:No
1877:Yes
1874:No
1868:Yes
1860:1.1
1851:4 (
1845:No
1836:No
1827:No
1821:Yes
1798:No
1789:No
1780:No
1759:No
1753:No
1750:No
1747:Yes
1744:Yes
1741:No
1727:1.2
1720:No
1717:Yes
1714:No
1711:No
1708:Yes
1705:Yes
1702:No
1681:No
1678:Yes
1675:No
1672:No
1669:Yes
1666:Yes
1663:No
1642:No
1639:Yes
1633:No
1630:Yes
1624:No
1618:Yes
1610:1.3
1603:No
1600:Yes
1594:No
1591:Yes
1585:No
1579:Yes
1564:No
1561:Yes
1555:No
1552:Yes
1549:Yes
1546:No
1525:No
1522:Yes
1516:No
1513:Yes
1507:No
1501:Yes
1486:No
1483:Yes
1480:No
1477:No
1468:No
1454:2.0
1447:No
1444:Yes
1438:No
1435:Yes
1429:No
1423:Yes
1408:No
1405:Yes
1399:No
1396:Yes
1390:No
1384:Yes
1369:No
1366:Yes
1360:No
1357:Yes
1351:No
1345:Yes
1330:No
1327:Yes
1321:No
1318:Yes
1312:No
1306:Yes
1288:Yes
1282:No
1279:Yes
1273:No
1270:Yes
1267:Yes
1259:2.2
1249:Yes
1246:No
1243:No
1234:No
1231:Yes
1228:Yes
1220:2.3
1210:Yes
1207:No
1195:No
1192:Yes
1189:Yes
1181:2.4
1171:Yes
1168:No
1156:No
1153:Yes
1150:Yes
1142:3.0
1132:Yes
1129:No
1114:Yes
1111:Yes
1103:3.1
1009:).
985:),
734:Int
728:Int
725:Int
687:fib
651:fib
648:Int
642:Int
636:fib
630:x_1
627:x_2
618:Int
615:Int
597:fib
573:fib
552:fib
543:fib
531:fib
519:fib
516:Int
510:Int
504:fib
480:fac
459:fac
456:Int
450:Int
444:fac
432:fac
411:fac
396:fac
384:fac
381:Int
375:Int
369:fac
322:An
185:.nl
183:.ru
181:.cs
3444::
3302:ML
3257:Go
3232:C#
3042:.
3020:.
3010:.
2976:.
2926::
2924:}}
2920:{{
2885:}}
2881:{{
2873:.
2851:^
2834:.
2809:.
2784:.
2670:.
2638:10
2632:10
2620:if
2605:10
2599:10
2590:if
2552:=:
2490:Eq
2481:Eq
2454:Eq
2445:Eq
2381:::
2304:xs
2220:)
2207:No
2198:No
2189:No
2186:No
2173:)
2152:No
2143:No
2134:No
2131:No
2113:No
2104:No
2095:No
2092:No
2074:No
2065:No
2056:No
2053:No
2030:No
2021:No
2012:No
1996:)
1983:No
1974:No
1965:No
1962:No
1949:)
1928:No
1919:No
1910:No
1889:No
1880:No
1871:No
1855:)
1842:No
1833:No
1830:No
1824:No
1808:)
1795:No
1786:No
1783:No
1777:No
1774:No
1756:No
1738:No
1735:No
1699:No
1696:No
1660:No
1657:No
1627:No
1621:No
1588:No
1582:No
1543:No
1540:No
1510:No
1504:No
1474:No
1471:No
1465:No
1462:No
1432:No
1426:No
1393:No
1387:No
1354:No
1348:No
1315:No
1309:No
1276:No
1240:No
1237:No
1201:No
1198:No
1162:No
1159:No
1123:No
1120:No
1001:,
818:.
794:-1
722:::
675:!!
639:::
612:::
507:::
495::
483:10
447:::
435:10
420:-1
372:::
360::
341::
319:.
290:,
286:,
282:,
278:,
274:,
270::
220:,
204:,
200:,
141:OS
132:,
128:,
3339:R
3222:C
3129:e
3122:t
3115:v
3074:.
3053:.
3028:.
3006::
2987:.
2962:.
2937:)
2933:(
2916:.
2891:)
2845:.
2820:.
2795:.
2770:.
2702:.
2681:.
2641:x
2635:)
2626:x
2623:(
2611:x
2593:x
2573:=
2570:)
2567:r
2564:x
2561:l
2555:(
2549:t
2534:=
2531:)
2528:r
2525:x
2522:l
2516:(
2513:@
2510:t
2493:b
2484:a
2478:|
2460:)
2457:b
2451:,
2448:a
2442:(
2426:)
2423:a
2417:(
2414:a
2411:)
2408:a
2402:(
2396:|
2390:=
2387:a
2372:)
2369:a
2363:(
2360:a
2357:)
2354:a
2348:(
2342:|
2336:=
2333:a
2301::
2298:x
2282:]
2279:x
2273:|
2264:]
2261:x
2255:,
2161:(
1992:(
1937:(
1804:(
997:(
989:(
977:(
893:C
887:.
876:.
874:C
869:.
867:C
797:)
791:n
788:(
785:^
782:x
779:*
776:x
773:=
770:n
767:x
764:)
761:^
758:(
755:1
752:=
749:0
746:x
743:)
740:^
737:(
719:8
713:)
710:^
707:(
690:7
684:=
678:n
672:)
669:1
666:1
660:(
657:=
654:n
633:=
600:7
594:=
588:)
585:1
582:-
579:n
576:(
570:+
567:)
564:2
561:-
558:n
555:(
549:=
546:n
540:1
537:=
534:1
528:1
525:=
522:0
477:=
465:=
462:n
429:=
423:)
417:n
414:(
408:*
405:n
402:=
399:n
393:1
390:=
387:0
349:=
109:)
84:)
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.