this post was submitted on 01 Aug 2023
71 points (97.3% liked)

Programming

17398 readers
155 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] snowe@programming.dev 4 points 1 year ago (1 children)

The code is already compiled. what do you mean it's preemptively compiled? If you're talking about executed, they explicitly called that out..

A prediction can also end at a function call the debugger is cautious about evaluating. That is for your own (or your software’s) well-being. Since code is executed during debugging, the debugger has to be sure that it’s not causing any mutations. When running the above example, we must confirm the evaluation of the int.TryParse method (more about that later):

As mentioned in the previous section, the predictive debugger won’t evaluate possibly impure functions to avoid side effects. As a human developer, you most certainly have more knowledge about the code, which is why we give you the possibility to forcefully evaluate a call by clicking the hint:

[–] ImpossibleRubiksCube@programming.dev 2 points 1 year ago (2 children)

I mean that in running it, it is by basic definition compiling what it is running into machine language. So no, code is most certainly not already compiled into machine language as I'm writing or reviewing it.

You question doesn't make much sense to me.

[–] jvisick@programming.dev 4 points 1 year ago

By necessity, when you’re in the debugger your code has already been compiled either way, no? Or am I missing something here?

This isn’t executing your code as you’re writing it (though it does support Edit & Continue), this is preemptively executing the next lines in your code when you’re already paused in the debugger - which means it’s been compiled and already running.

[–] snowe@programming.dev 2 points 1 year ago (1 children)

you're misunderstanding. this is a function of the debugger. Your code has already been compiled and is currently running if you are using this feature.

Ah, you're right, that does make more sense. So this runs while the program is in debug mode.

That relieves me a bit. I just feel like a lot of these new IDE features are things that no one specifically asked for.