Skip to content

Latest commit

 

History

History
132 lines (114 loc) · 4.64 KB

ReleaseNotes.md

File metadata and controls

132 lines (114 loc) · 4.64 KB

Introduction

This document contains the release notes for the interactive C++ interpreter Cling, release 0.4. Cling is built on top of Clang and LLVM compiler infrastructure. Here we describe the status of Cling in some detail, including major improvements from the previous release and new feature work.

Note that if you are reading this file from a git checkout or the main Cling web page, this document applies to the next release, not the current one.

What's New in Cling 0.4?

Some of the major new features and improvements to Cling are listed here. Generic improvements to Cling as a whole or to its underlying infrastructure are described first.

Major New Features

  • Clang and LLVM optimizations of interpreted code, defaults to -O2 (tweak with .O <N>)
  • Support unicode
  • Enable C++ modules builds for cling when built with clang
  • Functions can be declared at cling's prompt without .rawInput

Cling as a Library

  • Add a simple demo introducing cling as an interpreter library

Misc

  • Enable colors at the prompt
  • Increase support in printing out objects such as printing of structs and collections
  • Improve performance in code transformations for interactive use
  • Improve matching of runtime and build time environments
  • Improve stability of the cpt.py build tool

Experimental Features

  • Progress with support on Windows
  • Progress with PowerPC 64
  • Preprocessed Output: cling now has the ability to generate preprocessed output cling -E -dM will show all preprocessor definitions at startup

Jupyter

  • Support of current Jupyter versions fixing ZMQ communication issues
  • Support for c++11, c++14 and c++1z kernels

Fixed Bugs

ROOT-7016 ROOT-8739 ROOT-8696 ROOT-8523 ROOT-8399 ROOT-7354 ROOT-8529 ROOT-8467 ROOT-6539 ROOT-8443 ROOT-7037 ROOT-8443 ROOT-8379 ROOT-8375 ROOT-8392 ROOT-7610 ROOT-5248 ROOT-7857 ROOT-8300 ROOT-8325

Special Kudos

This release wouldn't have happened without the efforts of our contributors, listed in the form of Firstname Lastname (#contributions):

FirstName LastName (#commits)

Frederich Munch (235) Axel Naumann (191) Roman Zulak (66) Vassil Vassilev (63) Bertrand Bellenot (45) Philippe Canal (29) erlanger (7) Danilo Piparo (4) Raphael Isemann (3) Pere Mato (3) David Abdurachmanov (2) Sylvain Corlay (1) Spencer Lyon (1) Sebastian Uhl (1) Santiago Castro (1) PrometheusPi (1) Pedro Henriques dos Santos Teixeira (1) Maarten Scholl (1) Diego Torres Quintanilla (1) CristinaCristescu (1) Brian Bockelman (1) Boris Perovic (1) Ajith Pandel (1)