Knowledge

Jolie (programming language)

Source 📝

33: 257:, meaning that the execution of Jolie programs is mathematically defined. For this reason, Jolie is used in research for the investigation of language-based techniques for the development of distributed systems, and it is also used for teaching at some universities. 218:
proposed with Jolie, each program is a service that can communicate with other programs by sending and receiving messages over a network. Jolie supports an abstraction layer that allows services to communicate using different mediums, ranging from
517: 434:
Montesi, Fabrizio; Guidi, Claudio; Zavattaro, Gianluigi (2014). "Service-Oriented Programming with Jolie". In Bouguettaya, Athman; Sheng, Quan Z.; Daniel, Florian (eds.).
353: 24: 451: 323: 277: 521: 273: 162: 703: 589: 49: 254: 293: 289: 238: 138: 109: 285: 150: 234: 220: 525: 357: 420: 280:
programming language. Jolie extends SOCK with support for, e.g., tree-like data structures (inspired by
265: 207: 261: 80: 215: 203: 200: 40: 530: 362: 312: 227: 630: 593: 305: 169: 145: 75: 272:, a formal model proposed by Claudio Guidi et al. at the University of Bologna inspired by the 23: 543: 512:
Guidi, Claudio; Lucchi, Roberto; Gorrieri, Roberto; Busi, Nadia; Zavattaro, Gianluigi (2006).
447: 375: 640: 603: 566: 535: 439: 367: 269: 157: 56: 344: 570: 315:
by Fabrizio Montesi and its evolution is driven by Fabrizio Montesi and Claudio Guidi.
223: 697: 301: 211: 45: 308:, and web programming. A complete list of the project contributors is available at. 343:
Montesi, Fabrizio; Guidi, Claudio; Lucchi, Roberto; Zavattaro, Gianluigi (2007).
644: 443: 398: 371: 319: 326:
as it offers a concise (C-like) syntax for accessing XML-like data structures.
297: 547: 379: 607: 32: 658: 393: 539: 322:, Jolie is an alternative to XML-based orchestration languages such as 250: 621:
Montesi, Fabrizio (2016). "Process-aware Web Programming with Jolie".
498: 688: 241:
language, which can be run in multiple operating systems including
635: 598: 414: 242: 684: 246: 268:. The project initially began as an implementation of the SOCK 292:), message types, typed session programming, integration with 281: 183: 677: 470: 484: 346:
JOLIE: a Java Orchestration Language Interpreter Engine
199:(Java Orchestration Language Interpreter Engine) is an 563:
Formalizing languages for service oriented computing
178: 168: 156: 144: 134: 108: 86: 74: 55: 39: 514:SOCK: A Calculus for Service Oriented Computing 465: 463: 416:Jolie: a Service-oriented Programming Language 260:The Jolie open source project was started by 8: 16: 659:"Jolie Programming Language - About Jolie" 226:to local in-memory communications between 15: 634: 597: 529: 361: 586:Process-aware web programming with Jolie 499:"Jolie Programming Language - Academia" 335: 318:Since it supports the orchestration of 284:, but with a syntax resembling that of 264:in 2006, as part of his studies at the 7: 524:. Vol. 4294. pp. 327–338. 233:Jolie is currently supported by an 14: 356:. Vol. 181. pp. 19–33. 31: 22: 623:Science of Computer Programming 571:10.6092/unibo/amsdottorato/373 1: 115:1.11.0 / May 24, 2023 471:"Jolie Programming Language" 645:10.1016/j.scico.2016.05.002 485:"Chor Programming Language" 444:10.1007/978-1-4614-7518-7_4 372:10.1016/j.entcs.2007.01.051 720: 584:Montesi, Fabrizio (2013). 413:Montesi, Fabrizio (2010). 253:. The language comes with 311:The project is currently 276:process calculus and the 130: 104: 30: 21: 436:Web Services Foundations 208:distributed applications 608:10.1145/2480362.2480507 592:'13. pp. 761–763. 561:Guidi, Claudio (2007). 306:application containment 135:Implementation language 117:; 15 months ago 92:; 18 years ago 704:Programming languages 421:University of Bologna 266:University of Bologna 216:programming paradigm 204:programming language 540:10.1007/11948148_27 438:. pp. 81–107. 245:operating systems, 237:implemented in the 170:Filename extensions 87:First appeared 18: 90:July 31, 2006 453:978-1-4614-7517-0 194: 193: 711: 681: 680: 678:Official website 663: 662: 655: 649: 648: 638: 618: 612: 611: 601: 581: 575: 574: 558: 552: 551: 533: 509: 503: 502: 495: 489: 488: 481: 475: 474: 467: 458: 457: 431: 425: 424: 410: 404: 403: 390: 384: 383: 365: 351: 340: 270:process calculus 262:Fabrizio Montesi 255:formal semantics 190: 187: 185: 125: 123: 118: 100: 98: 93: 81:Fabrizio Montesi 67:Fabrizio Montesi 57:Designed by 35: 26: 19: 719: 718: 714: 713: 712: 710: 709: 708: 694: 693: 676: 675: 672: 667: 666: 657: 656: 652: 620: 619: 615: 583: 582: 578: 560: 559: 555: 531:10.1.1.102.6297 511: 510: 506: 497: 496: 492: 483: 482: 478: 469: 468: 461: 454: 433: 432: 428: 412: 411: 407: 394:"Jolie Project" 392: 391: 387: 363:10.1.1.408.2052 349: 342: 341: 337: 332: 206:for developing 182: 174:.ol, .iol, .jap 126: 121: 119: 116: 96: 94: 91: 70: 12: 11: 5: 717: 715: 707: 706: 696: 695: 692: 691: 682: 671: 670:External links 668: 665: 664: 650: 613: 576: 553: 504: 490: 476: 459: 452: 426: 405: 385: 334: 333: 331: 328: 192: 191: 180: 176: 175: 172: 166: 165: 160: 154: 153: 148: 142: 141: 136: 132: 131: 128: 127: 114: 112: 110:Stable release 106: 105: 102: 101: 88: 84: 83: 78: 72: 71: 69: 68: 65: 61: 59: 53: 52: 43: 37: 36: 28: 27: 13: 10: 9: 6: 4: 3: 2: 716: 705: 702: 701: 699: 690: 686: 683: 679: 674: 673: 669: 660: 654: 651: 646: 642: 637: 632: 628: 624: 617: 614: 609: 605: 600: 595: 591: 587: 580: 577: 572: 568: 564: 557: 554: 549: 545: 541: 537: 532: 527: 523: 519: 515: 508: 505: 500: 494: 491: 486: 480: 477: 472: 466: 464: 460: 455: 449: 445: 441: 437: 430: 427: 422: 418: 417: 409: 406: 401: 400: 395: 389: 386: 381: 377: 373: 369: 364: 359: 355: 348: 347: 339: 336: 329: 327: 325: 321: 316: 314: 309: 307: 303: 302:code mobility 299: 295: 291: 287: 283: 279: 275: 271: 267: 263: 258: 256: 252: 248: 244: 240: 236: 231: 229: 225: 222: 217: 213: 212:microservices 209: 205: 202: 198: 189: 181: 177: 173: 171: 167: 164: 161: 159: 155: 152: 149: 147: 143: 140: 137: 133: 129: 113: 111: 107: 103: 89: 85: 82: 79: 77: 73: 66: 64:Claudio Guidi 63: 62: 60: 58: 54: 51: 47: 46:Microservices 44: 42: 38: 34: 29: 25: 20: 653: 626: 622: 616: 585: 579: 562: 556: 513: 507: 493: 479: 435: 429: 415: 408: 397: 388: 345: 338: 320:web services 317: 310: 259: 232: 196: 195: 399:SourceForge 243:Linux-based 235:interpreter 201:open-source 186:.jolie-lang 565:(Thesis). 419:(Thesis). 330:References 313:maintained 298:JavaScript 122:2023-05-24 97:2006-07-31 636:1410.3712 629:: 69–96. 599:1410.3712 548:0302-9743 526:CiteSeerX 380:1571-0661 358:CiteSeerX 228:processes 214:. In the 210:based on 76:Developer 41:Paradigms 698:Category 146:Platform 324:WS-BPEL 278:WS-BPEL 251:Windows 224:sockets 179:Website 158:License 120: ( 95: ( 689:GitHub 546:  528:  450:  378:  360:  249:, and 221:TCP/IP 163:LGPLv2 685:jolie 631:arXiv 594:arXiv 520:'06. 518:ICSOC 354:ENTCS 350:(PDF) 197:Jolie 17:Jolie 544:ISSN 522:LNCS 448:ISBN 376:ISSN 296:and 294:Java 290:Java 288:and 247:OS X 239:Java 188:.org 151:Java 139:Java 687:on 641:doi 627:130 604:doi 590:SAC 567:doi 536:doi 440:doi 368:doi 282:XML 274:CCS 184:www 50:SOA 700:: 639:. 625:. 602:. 588:. 542:. 534:. 516:. 462:^ 446:. 396:. 374:. 366:. 352:. 304:, 300:, 230:. 48:, 661:. 647:. 643:: 633:: 610:. 606:: 596:: 573:. 569:: 550:. 538:: 501:. 487:. 473:. 456:. 442:: 423:. 402:. 382:. 370:: 286:C 124:) 99:)

Index



Paradigms
Microservices
SOA
Designed by
Developer
Fabrizio Montesi
Stable release
Java
Platform
Java
License
LGPLv2
Filename extensions
www.jolie-lang.org
open-source
programming language
distributed applications
microservices
programming paradigm
TCP/IP
sockets
processes
interpreter
Java
Linux-based
OS X
Windows
formal semantics

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