Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Exploring better compiler architecture

License

NotificationsYou must be signed in to change notification settings

MrSmith33/nihlang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Exploring ways of doing:

  • lexing
  • multithreading compilation
  • CTFE
  • IR design
  • standalone backend

Development infrastructure

  • Documentation
    • Changelog
    • readme.md file
    • license.md file
    • issue template
    • Internals and contributor's guide
    • File with links to resources
    • How to build project and examples
    • How to use compiler/backend as a library from D
    • CLI reference
    • Language reference
    • Lang lib tutorial
    • Lang lib API reference
    • Backend lib tutorial
    • Backend lib API reference
    • NIH language as an example of using VBE (Vox backend)
  • Examples:
    • Using compiler as CLI (as dll or as static lib)
    • Using backend (as dll or as static lib)
  • Editing
    • .editorconfig
    • .gitignore
  • CI:
    • On each commit and on new tags
    • Build each config for every OS and arch combination
    • Create Github Action that downloads a specific version of CLI binary
  • Error management and logging
    • Result type
    • Customassert
    • Stack trace generation
    • Exception handler
    • Structured logging for errors and other textual output
  • Build artifacts (15 permutations):
    • Target:
      • windows-x64
      • linux-x64
      • linux-arm64
      • macos-x64
      • wasm32-wasi
      • wasm32
    • CLI lang compiler executable
    • Lang compiler as a library
      • dll
      • static lib
    • Backend as a library
      • static lib
      • dll
    • Debug info: on/off
    • Should compile with both dmd and ldc compilers
    • Make dub package for using Lang and Backend from D
    • Compiling with-betterC mode and without libc to minimize size
  • Testing:
    • Text format for test case definitions and result definitions, IR text format
    • Test suite:
      • Individual units
      • Lang compiler tests
      • Backend tests
      • VM tests
    • Test coverage
    • Fuzzing
      • Entry points for various components
      • Backend (whole and each pass)
      • Lang compiler
  • Benchmarks:
    • Compilation speed
    • Runtime speed
    • Memory consumption during compilation

About

Exploring better compiler architecture

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp