Arcable is a programming language for writing C++-targeted programs in Python-like, C-like, assembly-like, or hybrid styles.
def main() -> int:
message: string = "hello"
print(message)
return 0
Arcable is distributed as a single Windows installer:
install.exe. Download it, run it, and confirm the setup
prompt.
The installer extracts arcable.exe and
acomp.exe to %LOCALAPPDATA%\Arcable\bin,
writes the language server and support files under
%LOCALAPPDATA%\Arcable, installs the VS Code extension,
and sets the user environment variables.
%LOCALAPPDATA%\Arcable\bin\arcable.exe
%LOCALAPPDATA%\Arcable\bin\acomp.exe
%LOCALAPPDATA%\Arcable\tools\arcable_lsp.py
After installing, open a new terminal and run:
arcable path\to\file.arc -o app.exe
def main() -> int:
message: string = "hello"
print(message)
return 0
int main() {
print("hello");
return 0;
}
.var value int 41
add value 1
print value
ret 0
def main() {
print("hello")
}
import <math.h>
from <stdint.h> import *
#include <math.h>
import "my_header.hpp";
.import <math.h>
%include "my_header.hpp"
Import targets become C++ #include lines in the generated
file. They must use angle brackets for system headers or quotes for
local headers.
The installer includes Arcable language support for VS Code, plus the standalone language server for editors that can launch an LSP process.
python %LOCALAPPDATA%\Arcable\tools\arcable_lsp.py
The editor tooling provides syntax coloring, diagnostics, quick fixes, hover text, and completions for Arcable and C++-style code.
Arcable started as AdaptableCPP, a compiler idea for
adapting different code styles into C++. As the project gained
.arc files, diagnostics, imports, editor support, reusable
language rules, and multiple styles, it became clearer that Arcable was
its own language rather than only a C++ wrapper.