cling
ClangBuildAnalyzer
Our great sponsors
cling | ClangBuildAnalyzer | |
---|---|---|
19 | 4 | |
3,310 | 904 | |
2.2% | - | |
8.6 | 5.7 | |
3 days ago | about 1 month ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | The Unlicense |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cling
-
Interactive GCC (igcc) is a read-eval-print loop (REPL) for C/C++
More recent activity, but based on clang: https://github.com/jupyter-xeus/xeus-cling https://github.com/root-project/cling
Similar to Cling[1] from ROOT.
-
It's 2023, so of course I'm learning Common Lisp
> The repl driven workflow is amazing and the lisp images are rock solid and highly performant.
do people not realize that basically everything vm/interpreted language has a repl these days?
https://www.digitalocean.com/community/tutorials/java-repl-j...
https://github.com/waf/CSharpRepl
https://pub.dev/packages/interactive
not to mention ruby, python, php, lua
hell even c++ has a janky repl https://github.com/root-project/cling
-
dont want online ones
Want to see your mind blown? Check out cling, a (sort of) C and C++ interpreter (it's a REPL). Or the work in progress, live-developed clauf, a real C interpreter.
- Fête à bord d’un avion de Sunwing | L’organisateur s’explique sur l’origine de sa fortune
-
Interpreter vs Compiler
"Exclusively" may be a tough claim. C++ has the Cling interpreter, for example. You could say that "most C++ implementations are compilers". My understanding with Python is that it is challenging to write a compiler for because it's a "dynamic" language. For example, it's possible to create a new datatype at runtime, or even to build strings and tell the interpreter to execute them as source code.
-
Python switch statement ftw (finally)
https://root.cern/cling/ https://github.com/root-project/cling
-
Getting information about classes, methods and variables in C++?
cling(https://github.com/root-project/cling) a c++ interpreter may help, or you can use an IDE or https://en.cppreference.com/ (on duckduckgo you can search directly on it with the !cpp bang, or use firefox 'add a keyword for this search' feature which is really great)
-
Wisp: A light Lisp written in C++
It has been done several times, at least.
http://www.hanno.jp/gotom/Cint.html
https://github.com/root-project/cling
https://www.softintegration.com
You can argue whether some of those are strictly interpreters, versus just a REPL hooked up to a compiler (as in the case of Cling). But they do exist.
ClangBuildAnalyzer
-
IncludeGuardian - improve build times by removing expensive includes
ClangBuildAnalyzer reports on parsing, build, and link time, whereas IncludeGuardian only reports on parsing time.
-
"Fast Kernel Headers" Tree -v1: Eliminate the Linux kernel's "Dependency Hell"
https://github.com/aras-p/ClangBuildAnalyzer is a very useful tool to quantify the cost of different headers (and other costly parts of the compile such as template instantiations). It doesn’t help with actually fixing such problems, but it’s a pretty good ruler to measure where the time is spent.
What are some alternatives?
termux-ndk - android-ndk for termux
xeus-cling - Jupyter kernel for the C++ programming language
Bear - Bear is a tool that generates a compilation database for clang tooling.
femtolisp - a lightweight, robust, scheme-like lisp implementation
sectorlisp - Bootstrapping LISP in a Boot Sector
cppreference-doc - C++ standard library reference
sol2 - Sol3 (sol2 v3.0) - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great! Documentation:
foth - Tutorial-style FORTH implementation written in golang
magic_get - std::tuple like methods for user defined types without any macro or boilerplate code
mal - mal - Make a Lisp
OpenSceneGraph - OpenSceneGraph git repository
include-what-you-use - A tool for use with clang to analyze #includes in C and C++ source files