Knowledge (XXG)

Limbo (programming language)

Source 📝

759: 32: 453:
creation, synchronizing and communicating between processes, loading modules of code, and support for higher-level data-types: strings, arrays, lists, and communication channels. It uses a hybrid of
934: 1197: 49: 1182: 1187: 1177: 366:
or compiled just before runtime to improve performance. Therefore all Limbo applications are completely portable across all Inferno platforms.
940: 461: 424: 764: 96: 1192: 253: 198: 68: 1010: 374: 280: 732: 115: 75: 1129: 1064: 53: 82: 276: 64: 1122: 779: 382: 308: 284: 1038: 773: 484: 414: 328: 210: 42: 1202: 1069: 791: 304: 1090: 397: 272: 919: 923: 736: 724:
The 3rd edition of the Inferno operating system and Limbo programming language are described in the textbook
1100: 1003: 402: 20: 168: 1033: 785: 418: 355: 89: 340: 441:
The Dis virtual machine that executes Limbo code is a CISC-like VM, with instructions for arithmetic,
324: 320: 139: 134: 913: 458: 450: 363: 260: 896: 336: 1085: 454: 446: 430: 159: 978: 905: 867: 741:
The Inferno Programming Book: An Introduction to Programming for the Inferno Distributed System
1095: 996: 909: 728: 300: 217: 205: 900: 146: 1146: 966: 954: 1151: 1105: 797: 468: 370: 868:"Very Concurrent Mark and Sweep Garbage Collection without Fine-Grain Synchronization" 1171: 408: 844: 442: 359: 193: 31: 891: 818: 754: 234: 1054: 378: 332: 288: 164: 1019: 744: 351: 344: 152: 222: 1156: 472: 323:
for writing distributed systems and is the language used to write
928: 992: 25: 988: 747:
and Howard Trickey, was started, but never released.
800:, a processor architecture which inspired the Dis VM 377:(CSP), as implemented and amended in Pike's earlier 1139: 1114: 1078: 1047: 1026: 294: 266: 251: 229: 216: 204: 192: 174: 158: 145: 133: 56:. Unsourced material may be challenged and removed. 866:Lorenz Huelsbergen and Phil Winterbottomv (1998). 467:Aspects of the design of Dis were inspired by the 875:1998 International Symposium on Memory Management 369:Limbo's approach to concurrency was inspired by 225:v2, see NOTICE in limbo subfolder of the tarball 929:Threaded programming in the Bell Labs CSP style 735:(Chichester: John Wiley & Sons, 2003), by 1004: 8: 128: 1011: 997: 989: 127: 956:The design of the Inferno virtual machine 116:Learn how and when to remove this message 471:microprocessor, as used in the original 810: 393:Limbo supports the following features: 743:, by Martin Atkins, Charles Forsyth, 1198:Programming languages created in 1995 7: 765:Free and open-source software portal 54:adding citations to reliable sources 845:"Dis Virtual Machine Specification" 375:communicating sequential processes 14: 819:"Inferno Application Programming" 362:which is then interpreted by the 151:Sean Dorward, Phil Winterbottom, 65:"Limbo" programming language 1183:Concurrent programming languages 1130:The Unix Programming Environment 757: 30: 1188:Free compilers and interpreters 41:needs additional citations for 920:Inferno Programming with Limbo 906:The Limbo Programming Language 794:, similar language from Google 726:Inferno Programming with Limbo 1: 1178:C programming language family 381:language and Winterbottom's 1123:The Practice of Programming 180:; 29 years ago 1219: 1193:Inferno (operating system) 782:, the predecessor of Limbo 487:-style definitions as in: 415:interprocess communication 18: 299: 271: 259: 977:"Dis VM specification", 892:Vita Nuova page on Limbo 567: 489: 329:Inferno operating system 924:Phillip Stanley-Marbell 737:Phillip Stanley-Marbell 411:at compile and run-time 403:concurrent programming 21:Limbo (disambiguation) 1048:Programming languages 1034:Plan 9 from Bell Labs 983:(4th ed.), Cat V 971:(4th ed.), Cat V 786:Plan 9 from Bell Labs 331:. It was designed at 897:A Descent into Limbo 739:. Another textbook 321:programming language 50:improve this article 19:For other uses, see 16:Programming language 431:abstract data types 398:modular programming 364:Dis virtual machine 261:Dis virtual machine 175:First appeared 169:Vita Nuova Holdings 130: 847:. Vita Nuova. 2000 788:, operating system 702:"Hello World! 603:"draw.m" 455:reference counting 425:garbage collection 1165: 1164: 1027:Operating systems 965:"Dis VM design", 910:Dennis M. Ritchie 582:"sys.m" 464:for cyclic data. 462:garbage-collector 389:Language features 341:Phil Winterbottom 314: 313: 194:Typing discipline 126: 125: 118: 100: 1210: 1203:Virtual machines 1013: 1006: 999: 990: 984: 972: 960: 950: 949: 948: 939:, archived from 879: 878: 872: 863: 857: 856: 854: 852: 841: 835: 834: 832: 830: 815: 776:operating system 767: 762: 761: 760: 715: 712: 709: 706: 703: 700: 697: 694: 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: 612:"sh.m" 610: 607: 604: 601: 598: 595: 592: 589: 586: 583: 580: 577: 574: 571: 559: 556: 553: 550: 547: 544: 541: 538: 535: 532: 529: 526: 523: 520: 517: 514: 511: 508: 505: 502: 499: 496: 493: 301:Stackless Python 247: 244: 242: 240: 238: 236: 188: 186: 181: 147:Designed by 131: 121: 114: 110: 107: 101: 99: 58: 34: 26: 1218: 1217: 1213: 1212: 1211: 1209: 1208: 1207: 1168: 1167: 1166: 1161: 1135: 1110: 1074: 1043: 1022: 1017: 976: 964: 953: 946: 944: 936:Dis source code 933: 901:Brian Kernighan 888: 883: 882: 870: 865: 864: 860: 850: 848: 843: 842: 838: 828: 826: 817: 816: 812: 807: 798:AT&T Hobbit 763: 758: 756: 753: 722: 717: 716: 713: 710: 707: 704: 701: 698: 695: 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: 605: 602: 599: 596: 593: 590: 587: 584: 581: 578: 575: 572: 569: 566: 561: 560: 557: 554: 551: 548: 545: 542: 539: 536: 533: 530: 527: 524: 521: 518: 515: 512: 509: 506: 503: 500: 497: 494: 491: 481: 469:AT&T Hobbit 439: 437:Virtual machine 391: 254:implementations 233: 184: 182: 179: 122: 111: 105: 102: 59: 57: 47: 35: 24: 17: 12: 11: 5: 1216: 1214: 1206: 1205: 1200: 1195: 1190: 1185: 1180: 1170: 1169: 1163: 1162: 1160: 1159: 1154: 1152:Mark V. Shaney 1149: 1143: 1141: 1137: 1136: 1134: 1133: 1126: 1118: 1116: 1112: 1111: 1109: 1108: 1103: 1098: 1093: 1088: 1082: 1080: 1076: 1075: 1073: 1072: 1067: 1062: 1057: 1051: 1049: 1045: 1044: 1042: 1041: 1036: 1030: 1028: 1024: 1023: 1018: 1016: 1015: 1008: 1001: 993: 987: 986: 974: 962: 951: 931: 926: 917: 916:by Vita Nuova. 903: 894: 887: 886:External links 884: 881: 880: 858: 836: 809: 808: 806: 803: 802: 801: 795: 789: 783: 777: 769: 768: 752: 749: 721: 718: 568: 565: 562: 490: 480: 477: 438: 435: 434: 433: 427: 421: 412: 405: 400: 390: 387: 312: 311: 297: 296: 292: 291: 269: 268: 264: 263: 257: 256: 249: 248: 231: 227: 226: 220: 214: 213: 208: 202: 201: 196: 190: 189: 176: 172: 171: 162: 156: 155: 149: 143: 142: 137: 124: 123: 38: 36: 29: 15: 13: 10: 9: 6: 4: 3: 2: 1215: 1204: 1201: 1199: 1196: 1194: 1191: 1189: 1186: 1184: 1181: 1179: 1176: 1175: 1173: 1158: 1155: 1153: 1150: 1148: 1145: 1144: 1142: 1138: 1132: 1131: 1127: 1125: 1124: 1120: 1119: 1117: 1113: 1107: 1104: 1102: 1099: 1097: 1094: 1092: 1089: 1087: 1084: 1083: 1081: 1077: 1071: 1068: 1066: 1063: 1061: 1058: 1056: 1053: 1052: 1050: 1046: 1040: 1037: 1035: 1032: 1031: 1029: 1025: 1021: 1014: 1009: 1007: 1002: 1000: 995: 994: 991: 982: 981: 975: 970: 969: 963: 958: 957: 952: 943:on 2017-09-21 942: 938: 937: 932: 930: 927: 925: 921: 918: 915: 911: 907: 904: 902: 898: 895: 893: 890: 889: 885: 876: 869: 862: 859: 846: 840: 837: 824: 820: 814: 811: 804: 799: 796: 793: 790: 787: 784: 781: 778: 775: 771: 770: 766: 755: 750: 748: 746: 742: 738: 734: 733:0-470-84352-7 730: 727: 719: 563: 488: 486: 478: 476: 474: 470: 465: 463: 460: 456: 452: 448: 444: 436: 432: 428: 426: 422: 420: 416: 413: 410: 409:type checking 406: 404: 401: 399: 396: 395: 394: 388: 386: 384: 380: 376: 372: 367: 365: 361: 358:-independent 357: 353: 348: 346: 342: 338: 334: 330: 326: 322: 318: 310: 306: 302: 298: 293: 290: 286: 282: 278: 274: 270: 267:Influenced by 265: 262: 258: 255: 250: 246: 232: 228: 224: 221: 219: 215: 212: 209: 207: 203: 200: 197: 195: 191: 177: 173: 170: 166: 163: 161: 157: 154: 150: 148: 144: 141: 138: 136: 132: 120: 117: 109: 98: 95: 91: 88: 84: 81: 77: 74: 70: 67: –  66: 62: 61:Find sources: 55: 51: 45: 44: 39:This article 37: 33: 28: 27: 22: 1147:Renée French 1128: 1121: 1115:Publications 1059: 979: 967: 959:, Vita nuova 955: 945:, retrieved 941:the original 935: 874: 861: 849:. Retrieved 839: 827:. Retrieved 822: 813: 740: 725: 723: 482: 466: 443:control flow 440: 392: 368: 356:architecture 349: 337:Sean Dorward 325:applications 316: 315: 112: 106:October 2013 103: 93: 86: 79: 72: 60: 48:Please help 43:verification 40: 829:January 26, 825:. vitanuova 564:Hello world 483:Limbo uses 447:data motion 417:over typed 360:object code 1172:Categories 947:2017-09-20 851:2 February 805:References 423:automatic 354:generates 350:The Limbo 295:Influenced 237:.vitanuova 140:Concurrent 76:newspapers 1055:Newsqueak 823:vitanuova 570:implement 459:real-time 379:Newsqueak 333:Bell Labs 289:Newsqueak 165:Bell Labs 160:Developer 1079:Software 1020:Rob Pike 914:Addendum 751:See also 745:Rob Pike 479:Examples 419:channels 352:compiler 345:Rob Pike 327:for the 241:/inferno 153:Rob Pike 135:Paradigm 1065:Sawzall 1039:Inferno 980:Inferno 968:Inferno 774:Inferno 639:Context 609:include 600:include 579:include 573:Command 451:process 429:simple 407:strong 230:Website 223:GNU GPL 218:License 211:Inferno 183: ( 90:scholar 731:  708:" 657:string 457:and a 343:, and 277:Pascal 252:Major 243:/limbo 199:Strong 92:  85:  78:  71:  63:  1157:UTF-8 1140:Other 1060:Limbo 871:(PDF) 720:Books 696:print 693:-> 681:-> 636:-> 555:value 549:name2 537:name3 531:name2 525:value 513:name1 507:name0 501:value 473:BeBox 371:Hoare 319:is a 317:Limbo 245:.html 129:Limbo 97:JSTOR 83:books 1091:Blit 1086:acme 912:and 853:2015 831:2021 780:Alef 772:The 729:ISBN 684:PATH 672:load 651:list 633:Draw 618:init 543:type 519:type 498:type 492:name 383:Alef 309:Rust 285:Alef 239:.com 185:1995 178:1995 69:news 1101:rio 1096:sam 922:by 908:by 899:by 690:sys 678:Sys 675:Sys 666:sys 645:nil 630:ref 624:nil 594:Sys 588:sys 485:Ada 373:'s 335:by 281:CSP 235:www 52:by 1174:: 1106:8½ 1070:Go 873:. 821:. 792:Go 711:); 705:\n 654:of 495::= 475:. 449:, 445:, 385:. 347:. 339:, 307:, 305:Go 303:, 287:, 283:, 279:, 275:, 206:OS 167:/ 1012:e 1005:t 998:v 985:. 973:. 961:. 877:. 855:. 833:. 714:} 699:( 687:; 669:= 663:{ 660:) 648:: 642:, 627:: 621:( 615:; 606:; 597:; 591:: 585:; 576:; 558:; 552:= 546:; 540:: 534:, 528:; 522:= 516:: 510:, 504:; 273:C 187:) 119:) 113:( 108:) 104:( 94:· 87:· 80:· 73:· 46:. 23:.

Index

Limbo (disambiguation)

verification
improve this article
adding citations to reliable sources
"Limbo" programming language
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
Paradigm
Concurrent
Designed by
Rob Pike
Developer
Bell Labs
Vita Nuova Holdings
Typing discipline
Strong
OS
Inferno
License
GNU GPL
www.vitanuova.com/inferno/limbo.html
implementations
Dis virtual machine
C
Pascal

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