July 2nd, 2024

8cc.vim: Pure Vim script C Compiler

The project "8cc.vim" adapts 8cc, a C compiler, into Vim script for x86_64 Linux using ELVM. It allows C code compilation within Vim, offering commands and functions for experimentation. Installation guidelines are available on the GitHub repository.

Read original articleLink Icon
8cc.vim: Pure Vim script C Compiler

The project "8cc.vim: Pure Vim script C Compiler" is a Vim script adaptation of 8cc, a C compiler for x86_64 Linux based on ELVM. It enables the compilation of C code into Vim script, offering commands like `:EccCompile` and `:EccRun`, as well as functions such as `eightcc#compile()` and `eightcc#run()`. While the compilation process may be time-consuming, it serves as an engaging experimentation platform. To explore this unique C compiler implemented in Vim script, interested individuals can clone the repository and refer to the installation guidelines available in the README. Additional information can be found on the 8cc.vim GitHub repository.

Related

Yacv (Yet Another Compiler Visualizer): LL and LR Parser Animations

Yacv (Yet Another Compiler Visualizer): LL and LR Parser Animations

The "Yet Another Compiler Visualizer" (yacv) tool enhances understanding of LL(1) and LR parsers through syntax tree, LR automaton, parsing table visualization, and step-by-step parsing using Manim. Detailed installation and usage guidance available.

Cosmopolitan v3.5

Cosmopolitan v3.5

Cosmopolitan Libc transforms C into a universal language by modifying GCC and Clang to create a POSIX-compliant polyglot format. Users can compile programs using the `cosmocc` compiler and access debugging techniques. The project provides platform notes, a Discord chatroom, and funding acknowledgments.

A working entropy encoder with output below the Shannon limit

A working entropy encoder with output below the Shannon limit

The GitHub repository features Valli encoding, an entropy encoder aiming for compression below the Shannon limit. It includes a C++ implementation, algorithm explanations, code instructions, and project support. Visit the repository for more.

My (Neo)Vim workflow

My (Neo)Vim workflow

An experienced Vim user shares tips on optimizing the (Neo)Vim experience through Personalized Development Environment (PDE), covering search techniques, keybindings, plugins, movement enhancements, text manipulation, quickfix list, spell check, and status line customization.

Vim Registers: The Good, the Bad, and the Ugly Parts (2013)

Vim Registers: The Good, the Bad, and the Ugly Parts (2013)

Registers in Vim offer versatility for macros and data storage. Drawbacks include incomplete clipboard history and confusing terminology. Author suggests improvements for a more efficient workflow, acknowledging Vim's usefulness.

Link Icon 6 comments
By @WalterBright - 4 months
Back in the 1970s, I was told that somebody had written a FORTRAN compiler as a TECO macro just to prove it could be done.

(TECO means Text Editor Charactor Oriented, a line editor that had a macro capability. EDLIN was a line editor for MS-DOS.)

By @timando - 4 months
Can you use the ELVM backend to compile Emacs into Vim script?
By @INTPenis - 4 months
It looks like they're just taking the entire eightcc compiler and stuffed into vim buffer memory.
By @flying_sheep - 4 months
I'd love to use vim to compile vim lolz
By @riddley - 4 months
Checkmate, athiests.