Allowed file types:jpg, jpeg, gif, png, webm, mp4, pdf, pdfMax filesize is 16 MB.Max image dimensions are 15000 x 15000. You may upload 3 per post.
▶new methods of debugging Anonymous 04/23/19 (Tue) 11:57:21 No.1059415>>1059418 >>1059494 >>1059497 [Watch Thread][Show All Posts]
if you were to create a new programming language, what kind of new/unknown debugging methods would you have for it?
▶Anonymous 04/23/19 (Tue) 12:12:58 No.1059418>>1059425
>>1059415 (OP)
make the languega tell you what's wrong and how to fix it!
▶Anonymous 04/23/19 (Tue) 13:00:32 No.1059425
>>1059418
it might be possible to some extent if something like https://en.m.wikipedia.org/wiki/Delta_debugging can be fully automated. at least for the what went wrong part.
▶Anonymous 04/23/19 (Tue) 17:22:16 No.1059441>>1059455
Probably just Common Lisp's debug methods together with checkpointing. This doesn't really require a new language though.
▶Anonymous 04/23/19 (Tue) 17:50:50 No.1059442>>1059447
The field of debugging is complete. I can't imagine any new kind of print statement that one might need. Every existing language supports comprehensive string and number printing. More modern languages support printing of arbitrary data types, including arrays and structures. I've seen some languages that will even print out function definitions. Everything a person could need printed can already be printed, there is nothing new to add.
▶Anonymous 04/23/19 (Tue) 18:21:56 No.1059447>>1059499 >>1059549
>>1059442
<debugging is just about printing data
Wrong
▶Anonymous 04/23/19 (Tue) 18:44:05 No.1059455>>1059459 >>1059579
>>1059441
This, when a Common Lisp program crashes you are dropped right into the debugger. You can fix the source code, re-compile it and have your program running right at the point where it crashed. Not to mention that the debugger is running in Lisp as well, so you use the same language for debugging as for writing the code.
▶Anonymous 04/23/19 (Tue) 19:02:03 No.1059459
>>1059455
Don't forget *debugger-hook*.
▶Anonymous 04/23/19 (Tue) 19:49:51 No.1059462>>1059492
I'd provide a graphical map of all instantiated objects that could be navigated.
▶Anonymous 04/23/19 (Tue) 22:30:22 No.1059492>>1059505
>>1059462
Most IDEs provide both call and type hierarchy tree views.
▶Anonymous 04/23/19 (Tue) 22:45:30 No.1059494>>1059495
Rewind/step-back.
▶Anonymous 04/23/19 (Tue) 22:49:34 No.1059495
>>1059494
>Rewind/step-back.
Reverse execution is already a thing.
https://sourceware.org/gdb/current/onlinedocs/gdb/Reverse-Execution.html#Reverse-Execution
▶Anonymous 04/23/19 (Tue) 22:53:17 No.1059497>>1059498 >>1059501
Bug driven development.
I would say more but I know this shithole is full of LARPers who'll pretend they came up with the idea first.
▶Anonymous 04/23/19 (Tue) 22:56:04 No.1059498
>>1059497
That's just threat modeling.
▶Anonymous 04/23/19 (Tue) 22:56:22 No.1059499
>>1059447
Even if you're right, you're wrong for not explaining your point.
▶Anonymous 04/23/19 (Tue) 22:57:23 No.1059501>>1059508
File (hide): 24b48d3a21055f1⋯.gif (2.6 MB, 200x250, 4:5, 24b48d3a21055f13250bc48a61….gif) (h) (u)
>Bug driven development.
>thinks he invented it
Adorable.
▶Anonymous 04/23/19 (Tue) 23:28:19 No.1059505>>1059511
>>1059492
I don't want a tree or stack, I want a big diagram, where each object is a circle that is bigger depending on the memory taken up by that object and that I can zoom into to see the values of members as well as observe while the program is running.
▶Anonymous 04/23/19 (Tue) 23:38:35 No.1059508>>1059511
>>1059501
You are probably thinking of bug chasing.
I'm talking about full on bug driven development. All I need is a good cover and I'm ready for that O'Reilly money.
▶Anonymous 04/23/19 (Tue) 23:48:05 No.1059511
>>1059508
If that's different than the existing BDD, you might need an original name too
>>1059505
What are the edges of the graph representing?
▶Anonymous 04/24/19 (Wed) 00:00:50 No.1059513
you want fast compile times for quickly testing changes
https://www.youtube.com/watch?v=KCWVusIztlY
▶Anonymous 04/24/19 (Wed) 05:15:12 No.1059549
I like to imagine this one guy responds to every incorrect post he sees with "Wrong" like this
▶Anonymous 04/24/19 (Wed) 10:14:16 No.1059579>>1059588
How do you debug a compiled language though?
▶Anonymous 04/24/19 (Wed) 10:56:40 No.1059582
Here's another example for a place for improvement: visualization.
being able to visualize geometry and data structures would be very useful.
making it easy to do with the language will help a lot.
▶Anonymous 04/24/19 (Wed) 12:57:19 No.1059588
>>1059579
The compiler can leave debugging symbols in the binary. It bloats the file size a little, but it's generally negligible and the benefit of being able to debug on the user-end is worth it. In GCC or clang for example you have to pass the '-g' flag to the compiler.