ArticleslgStudy

computer science

Golo (programming language)

Golo (programming language) is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Golo (programming language) rather than just read about it. In short: Golo is computer software, a programming language for the Java virtual machine (JVM). It is simple, with dynamic, weak typing.

Key takeaways

  • Golo (programming language) belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Golo (programming language) to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Golo (programming language) from memory before moving on to harder problems.

Reference excerpt

Golo is computer software, a programming language for the Java virtual machine (JVM). It is simple, with dynamic, weak typing. It was created in 2012 as part of the research activities of the DynaMid group of the Centre of Innovation in Telecommunications and Integration of service (CITI) Laboratory at Institut national des sciences appliquées de Lyon (INSA). It is distributed as free and open-source software under the Eclipse Public License 2.0.

History It has been built as a showcase on how to build a language runtime with invokedynamic. Golo is largely interoperable with the programming language Java and other JVM languages (e.g., numeric types are boxing classes from java.lang, and collection literals leverage java.util classes), that runs on the JVM. In June 2015, Golo became an official Eclipse Foundation project. The project was terminated in September 2022.

Technical details The language features have been initially designed around the abilities of invokedynamic – JSR 292 that appeared in Java SE 7. Golo uses ahead-of-time compilation of bytecode. While the bytecode remains stable over a program execution, the invokedynamic-based reconfigurable call sites support the adaptive dispatch mechanisms put in place for helping the HotSpot just-in-time compiler (JIT) to extract reasonable performance.

Publications Baptiste Maingret, Frédéric Le Mouël, Julien Ponge, Nicolas Stouls, Jian Cia and Yannick Loiseau. Towards a Decoupled Context-Oriented Programming Language for the Internet of Things. To appear in the 7th International Workshop on Context-Oriented Programming hosted at ECOOP 2015. Prague, Czech Republic. July 2015. Julien Ponge, Frédéric Le Mouël, Nicolas Stouls, Yannick Loiseau. Opportunities for a Truffle-based Golo Interpreter. Technical report arXiv:1505.06003 (cs.PL) and HAL-INRIA deposit Julien Ponge, Frédéric Le Mouël and Nicolas Stouls. Golo, a Dynamic, Light and Efficient Language for Post-Invokedynamic JVM. In Procs. of PPPJ'13. Stuttgart, Germany. September 2013. DOI link. HAL-INRIA deposit. Slides.

See also

List of JVM languages

References

"Golo – A Lightweight Dynamic Language for the JVM". Archived from the original on 3 July 2015. Retrieved 2 July 2015. "Golo nominated for JAX Awards 2014". Retrieved 2 July 2015. "Golo entry at JAX Awards 2014". Retrieved 2 July 2015. "Golo mentioned at the Netbeans Weekly News Issue 587". Archived from the original on 2015-07-04. Retrieved 2 July 2015.]

External links Official website Golo at GitHub repository Golo incubation page at Eclipse.org Eclipse integration for Golo Archived 2015-07-03 at the Wayback Machine Netbeans module to support Golo

Worked examples

Example 1 — a first encounter with Golo (programming language)

Start with the simplest possible case. Write down what Golo (programming language) claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Golo (programming language) before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Golo (programming language) ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Golo (programming language)

In research
Golo (programming language) appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Golo (programming language) in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Golo (programming language) is common in secondary-school and first-year university syllabi. It links to neighbouring topics JVM programming languages, Programming languages, Software using the Eclipse Public License, so understanding it makes those chapters shorter.
In everyday life
Look for Golo (programming language) outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Golo (programming language)” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Golo (programming language) in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Golo (programming language) means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Golo (programming language) out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Golo (programming language) in simple terms?

Golo is computer software, a programming language for the Java virtual machine (JVM). It is simple, with dynamic, weak typing.

Why does Golo (programming language) matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Golo (programming language)?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Golo (programming language).

Tags

  • JVM programming languages
  • Programming languages
  • Software using the Eclipse Public License

Keep exploring