Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cling C++ as scripting language / hot code reload #5

Closed
blockspacer opened this issue Aug 24, 2019 · 4 comments
Closed

cling C++ as scripting language / hot code reload #5

blockspacer opened this issue Aug 24, 2019 · 4 comments

Comments

@blockspacer
Copy link

cling based C++ as scripting language / hot code reload
Why? Able to run C++ script in runtime or compile it for max speed ( as in example https://github.com/derofim/cling-cmake )
Also: May be used to improve modules compile time

HOT code reload
possible approaches:

store app state
fix cling undo for files
https://root-forum.cern.ch/t/loading-unloading-class-as-interpreted-macro-in-cling-multiple-times/32976/2

execute cling code to change callbacks & variables
nested cling::Interpreter with multiple cling::MetaProcessor
IDK how to do it, but you can create child cling::Interpreter

@onqtam
Copy link
Owner

onqtam commented Aug 25, 2019

I'm not sure how this is qualifies as an issue to RCRL and not as an advertisement for the other project.

@onqtam onqtam closed this as completed Aug 25, 2019
@blockspacer
Copy link
Author

@onqtam

Quote from you blog http://onqtam.com/programming/2018-02-12-read-compile-run-loop-a-tiny-repl-for-cpp/

cling is an interactive C++ interpreter (developed at CERN) but since it is built on top of LLVM it isn’t easy at all to integrate in your application in an elegant way so everything is callable and works on any platform and toolchain.

Cling may be integrated into CMake project without much work, may be helpfull for REPL.

@onqtam
Copy link
Owner

onqtam commented Aug 25, 2019

add it as a comment there - perhaps I shouldn't change the original text of the article

@blockspacer
Copy link
Author

add it as a comment there - perhaps I shouldn't change the original text of the article

Ok, done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants