Aviva Directory » Computers & Internet » Programming » Monte

Designed by Mark S. Miller and Jonathan Shapiro, the Monte programming language was first released in 2008.

Inspired by Python and E, Monte is a dynamic programming language designed for agoric systems, and it promotes secure distributed computation. Its design incorporates a guard-based type system and a capability-based object model that grants certain essential safety guarantees to all objects. The syntax of Monte is Python-like, and it includes customizable pattern matching and object literals. Monte also has a built-in concurrency feature that facilitates a natural and simple set of idioms for highly concurrent systems.

Like E, Monte offers dramatic advantages for secure distributed systems, including capability-based security that enables the concise composition of powerful patterns of interoperation patterns, allowing for extensive cooperation even in the presence of severely limited trust. The language also promises benefit from a promising-pipelining architecture that ensures that most deadlocks cannot occur. Monte offers cryptographic services directly to its users, easing the use of good cryptographic primitives.

Monte is a pure object-based language in the Smalltalk tradition, making it easy to write modular, readable, maintainable software using strategies familiar from Python, JavaScript, Ruby, Java, and other object-based languages. Like Smalltalk, Monte is dynamically typed rather than statically typed, like Java. Perl and Python programmers will recognize this as an advantage, while C++ and Java programmers might be unsure. However, Monte inherits two forms of contract-based programming from E: guards and interfaces.

Monte is dynamic in three ways: its dynamic typing, dynamic binding, and dynamic compiling.

As compared to Python and many other languages, Monte is a new language, but it has a growing community of developers interested in its potential. The Monte community is active on IRC, and the language's documentation includes a guide and reference.

Interestingly, the NASA Jet Propulsion Laboratory utilizes a programming language known as Monte, which is also used in conjunction with Python. Although it is described similarly, I don't believe they are the same programming language. NASA's Monte is described as a product of the Mission Design and Navigation Section of the Jet Propulsion Laboratory, with sponsorship from NASA's Multimission Ground System and Services program office, and the property of the California Institute of Technology. Information on obtaining a Monte license may be requested from the Jet Propulsion Laboratory.

Nevertheless, topics related to any programming language named Monte would be appropriate resources for this portion of our web guide.



Recommended Resources

Search for Monte on Google or Bing