Skip to content

Implement C compiler for self education #74

@proto-h

Description

@proto-h

Implement working C compiler for self-education purposes

References

  1. https://www.c-language.org/
  2. https://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html
  3. GCC documentation
  4. LLVM documentation
  5. Existing C implementations

Interesting C projects

  1. https://github.com/c-util/c-stdaux/blob/main/src/test-api.c
  2. GNU projects (https://www.gnu.org/software/software.en.html)
    1. Make
    2. Bash
    3. Linux
    4. GNU toolchain (own definition): M4, Autoconf, Automake, Autogen, GNU Library, Libtool
    5. glibc
    6. Binutils
    7. GRUB
    8. Emacs
    9. Bison
    10. Coreutils
    11. Midnight Commander
    12. Hurd: Mach OS microkernel
    13. Sed
    14. GAWK
    15. Smalltalk
  3. Python
  4. QEMU
  5. Jq
  6. NVim
  7. PostgreSQL
  8. PHP
  9. Perl
  10. Lua
  11. PCRE library
  12. Nginx, Nginx unit, OpenResty (Nvim relationship via Lua)
  13. Redis
  14. SQLite
  15. Tcl (for Tcl/Tk)
  16. Ruby
  17. Systemd
  18. Valgrind
  19. Musl
  20. FFmpeg
  21. Git
  22. Tmux
  23. FreeBSD
  24. OpenBSD
  25. OpenSSH
  26. libvirt
  27. https://github.com/acassen/keepalived
  28. HAProxy

Interesting C++ projects

  1. CMake
  2. LLVM
  3. MariaDB
  4. JVM
  5. Chromium
  6. Fuchsia
  7. RR
  8. llama.cpp
  9. Envoy
  10. GNU projects:
    1. R
    2. Octave
    3. GCC
    4. GDB

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    in-progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions