There were a few gems here that I want to commit to memory. Will be rewatching this one.
@Sousleek6 жыл бұрын
I've benn interested by contract programming paradim a year ago. Now i'm interested again :)
@RandomAlexus3 жыл бұрын
I got to the part where he brought granola bars and just had to like the video on principle.
@CppExpedition3 жыл бұрын
This is brutally impressive, thank you so much!
@mishasawangwan66524 жыл бұрын
6:42 lol ..’huge negative numbers’ ...g1. made me chuckle a lil’.
@StankyPickle16 жыл бұрын
This is cool!
@acobster4 жыл бұрын
Why "especially" Python? I'd be interested to hear more about that.
@l_combo4 жыл бұрын
The talk was at PyCon (Python Conference), there isn't anything specific that makes this constrained to Python.
@sadhlife3 жыл бұрын
it's because how easily hackable and dynamic python is, you can even do things like modify the AST of a function at runtime, or pull the stack frame out and inspect it at runtime, which makes it possible to write some wacky contracts that's basically impossible in many other languages
@magno51575 жыл бұрын
Didn't realize programming by contracts was still unknown to a large number of programmers. I thought they were already pretty standard.
@cypix3141235 жыл бұрын
Well now that C++20 will get them as language feature, few more will now.
@magno51575 жыл бұрын
cypix314123 That’s interesting and puzzling. How are they going to implement it? Seems to me there will be lots of extra new syntax, which would make contracts much, much less readable than just regular comments.
@cypix3141235 жыл бұрын
@@magno5157 I don't really know. I think they will use the C++ attribute syntax. I stop working with C++ at C++14 and I heard that about contracts on C++ podcast. I found this www.modernescpp.com/index.php/c-core-guidelines-a-detour-to-contracts int push(queue& q, int val) [[ expects: !q.full() ]] [[ ensures !q.empty() ]]{ ... [[assert: q.is_ok() ]] ... }
@MrMartingale14 жыл бұрын
@@cypix314123 wow C++ is becoming even more pathetic soup of punctuation marks
@10e9996 жыл бұрын
Great talk.
@japrogramer6 жыл бұрын
where did he import @ensure from?
@серымуткамнапрудах6 жыл бұрын
from contracts
@l_combo4 жыл бұрын
The module is: pypi.org/project/dpcontracts/ Git Repo: github.com/deadpixi/contracts
@damickillah4 жыл бұрын
"...better than any testing framework out there...any language..." Ok. Hypothesis is almost an exact clone of quickcheck for haskell. So, dude, nah.
@CripplingDuality4 жыл бұрын
He did say 'one of the best', to be fair, and considering the limitations of Python when compared to Haskell, that's a significant achievement.
@ruixue69553 жыл бұрын
2:57 beyond unit tests
@MH-oc4de2 жыл бұрын
Yawn. Yet another talk with contrived examples designed to justify the existence of non-necessary packages that are not worth the tiny benefit they provide.