9

Proposal: Programming Language Design and Implementation

Compilers are, of course, only one part of the software development toolchain. There are other tools that are language-adjacent, such as profilers, debuggers, and linkers. Are questions about these on topic?

1 Answer 1

14

Profilers and Debuggers

Questions about creating debuggers and profilers wouldn't be on topic, but questions about exposing debug symbols and memory layout location to a debugger of profiler would be, or designing a language so it's easy/hard to debug/profile.

Linkers

Yes

4
  • interesting thought ... how would you design a language so it is hard to debug/profile?
    – warren
    Mar 29, 2023 at 16:14
  • 3
    By not including debug symbols or including them in a format that common debugging/profiling tools don't recognize and not offering your own
    – mousetail
    Mar 29, 2023 at 16:21
  • that sounds more like a toolchain/linker/compiler type question than a language one. (I happen to think the toolchain should be ontopic ... but your definition doesn't sound linguistic to me)
    – warren
    Mar 29, 2023 at 16:49
  • 2
    @warren Programming languages that encourage high-order programming (e.g. think higher-order functions in Haskell) introduce challenges for debugging and profiling. They make the call tree not look like it's supposed to. Similar story for promises/futures, which can be hard to debug because they generally don't retain information about where they came from.
    – Pseudonym
    Apr 18, 2023 at 0:32

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .