Enlightened
-
Most of your reply is about how the problems with EFL exist because it's written in C. This, unfortunately, does not mean these problems do not exist. It is clear you wanted an OOP design for EFL. Do you regret choosing C over a language with built-in support for OOP?
You mention EFL checks types in run-time, like JavaScript and Python. Do you consider dynamic typing a better alternative to static typing? Guido certainly thinks so and he wrote an entire language for it. If you make a wrong call in Python you get a nice stack trace of what and where things went wrong. The "SPANK SPANK" error doesn't really compare. Similarly, the "BITCH!" (now "COMPLAIN!") error does not really tell you anything worth while until you see the conditions under which it is printed.
My opinion is that it's better to know about errors sooner, rather than later. Therefore I prefer static typing so that my compiler can catch problems before I run the code. I also use an IDE that catches basic errors so I can fix them before I compile my code. Run-time checks are the last place where you can find an error (before a bug report). How does the situation look like with the new system of "pointers that are IDs"? How can you debug it? Does it print stack traces when an invalid operation is attempted? Is further execution prevented?
-
I couldn't be bothered to remember my existing username
Seriously?Wow. I mean, it's not like things like LastPass and KeePass exist…
-
i never said it was good. i never said i didn't see it. and i never said that - OP did. and the text he claimed was there was not - and i fixed it. see previous reply. what makes you think i denied that this would be offensive? what makes you think i would fail to see the insult?
But by your response, you implied that you thought it might be OK to put stuff like that in production code. Here's what a good response would be:
I'm sorry, we searched the codebase and found that. It was put in by $(old_contributor) and he thought it was a joke. We've removed it now. I understand that could be insulting.
Instead you said:
@Carsten_Haitzler said:HAHAHA you used the wrong exact phrase pendantry pendantry lolz.
-
-
-
Alright, alright. I couldn't be arsed to open KeePass either. Sheesh. Happy now?
-
At least we won't have to guess the names of your sock puppets now.
-
nope - don't regret using C. and as for backtrace:
export EINA_ERROR_ABORT=1 gdb app
you will get a nice bt. sure - it isn't the default because default is to march on and recover with a complaint - the complaint is your signal to enable this next time you run and hunt down the detail. the reason there is no bt is that i've had mixed success with backtrace_symbols() before and mostly it getting ??()'s rather than a real bt where gdb manages the real bt fine.
-
Alright, alright. I couldn't be arsed to open KeePass either. Sheesh. Happy now?
Do I look like I'm happy?
-
my response was based on it not being there (anymore) (when i looked). i have been pretty clear about it that it shouldn't be there and i fixed it. i searched the codebase - i didn't do an exhaustive search through all history and using different strings than quoted in the OP.
-
because default is to march on and recover with a complaint
Ah, so it'sOn Error Resume Next
2.0. Nice.
-
-
Plus I can now like my own posts. So two good things already!
-
yes - because mostly the errors are harmless. the majority of code marches on fine - thus prefer staying alive over suddenly falling over. the mode can be switched with an env var. you can set it in /etc/profile or ~/.profile or .bashrc or whatever tickles your fancy if you are a developer and are going to hunt down the issues.
-
he did not say he pulled it from memory when he made the claim until corrected.
I'm sorry, that was my interpretation. Fact remains that you are dancing around the room not admitting to the turd that is left in the middle of the room. It doesn't matter if it is 'you bitch' or 'bitch'. Or nigger, motherfucker, fucker or eikel.
Luhmanns Law of Errors:
Code Quality always shines through in Error messagesAnd front and center here are two examples that makes me suspicious about the quality of your product.
-
my response was based on it not being there (anymore) (when i looked). i have been pretty clear about it that it shouldn't be there and i fixed it. i searched the codebase - i didn't do an exhaustive search through all history and using different strings than quoted in the OP.
I think you should stop trying to defend what you wrote in your first post. You lied to us regarding having never seen such an error message to make your project look better. Period.
Filed under: This topic is a barrier to getting anything done today.
-
I am a developer. And my debugging process for this type of errors looks like this:
Write code, compile, have the compiler tell me there is an error, fix it, compile, done.Your debugging process looks like this:
Write code, compile, have QA overlook the bug because it happens under border conditions, ship code to thousands of devices worldwide, get bug report eventually, try to remember what you did three years ago, start arcane debugging process so you can get stupid "complaints", fix it, compile, have QA test it again, ship update to thousands of devices, wait for next bug report.Stop making it sound like a good thing.
-
dude - i said it half a dozen times now - you read not a single one - it should not be there. i removed it. scroll back up and just look.
-
-
i never said "i never saw it" - quote:
"as for the "you bitch" comment. that does not appear anywhere inside efl at asll. i can only assume you are full of bullshit here as with a lot of the prior "facts" you have disclosed, as a grep through our codebase for efl and elementary shows no such string:"
please don;t put words in my mouth.
-
You'd find it by removing "you"
That would have been an obvious assumption even. Since you where not sure about the exact text leaving out noise words like 'you, I, a, the' is rather searching 101. It's even that basic that we don't blink when Google/Bing/Yahoo does this for us.
-
i never said "i never saw it"
But you said:
that does not appear anywhere inside efl at all.
(HTFY)
Which is pretty much the same. Intentionally misleading statements and lies are pretty much the same thing to me. Can we agree on the term "PR talk"?
-
Don’t use pointers as pointers. Split the bits in them into 3 (or 4) groups, which would be cast to a numerical indexes into 3- (or 4-) dimensional hash map, which in turn results in a real pointer to function + object, and call it, if such exist. If not, don’t do anything and don’t give the programmer any feedback. Oh, and implement this in a way that makes the absolute maximum objects your process can have equal to 512. But don’t forget to not warn anyone when the limit gets exceed, but call given function on a random object which causes hash collision.
Did @Carsten_Haitzler address this stuff? His quoteless replies lack a lot of useful context, but I'd like to hear more about this apparent WTF. I mean, other than the limits.
-
and i was very explicit - i took the string he gave "you bitch" - i pasted results of the grep. i looked for exactly what he said - i normally use the most explicit string as it cuts down false positives. i didn't lie - i said that that string does not appear anywhere in efl - if he had said "something like 'you bitch'" i'd maybe have been a bit more circumspect. and as i have said something on the order of a dozen times - yes "bitch" was there in an error printout and it should not have been. i fixed it.
-
dude
> Luhmanns Law of Errors:
Code Quality always shines through in Error messages
COMPLAIN! and SPANK! Don't really inspire confidence in the quality of your product.
-
Did @Carsten_Haitzler address this stuff?
He did:
we indirect to a table that is managed in order to get actual object pointers. the "pointer" exposed to apps is now an ID stuffed into a pointer for API/ABI compatibility.
-
The "sane"1 response would be "Hmm, nothing says 'You belgium', but I do recall removing the word 'belgium' from some error message a while ago. Maybe that's what he's talking about. Let's try to smooth this over with an obviously pissed customer and hope he doesn't go spreading more foulness elsewhere"
Instead, @Carsten_Haitzler decided he'd be pendantic and use @asdf's "PR talk" approach. And we're calling him on it.
1 Yes, TRWTF
Filed under s/bitch/belgium at @boomzilla's request
Additionally filed: @mentions break<a>
tags. @discoursebot
-
bitch
Geez, guys, let's give the bitches a rest.
(add your own U if you like)
-
-
-
i think i did reply to this - you will get feedback. you'll get a stderr log noisily about the object being invalid (not in the table or the table entry is a NULL pointer to an obj). it's really 2 dimensional with tables and rows. you have any number of tables (tables are allocated on-demand and released when empty). a table has N rows and a row has generation count and pointer to actual object data. if you call a method (function) on the object and the object doesn't inherit from that class, then you'll get a loud complaint that the method (with a string spewed out as to the method) is not valid for that object. so no - there is not "don't give the programmer any feedback" - they definitely get it loudly.
and sorry - limit on 32bit is 22 bits (1 extra flag bit - i forgot about), on 64bit it's 34 bits for object id (so 16 billion or so).
-
You should read http://download.tizen.org/misc/media/conference2014/slides/tdc2014-core-object-model-eo-efl.pdf .
COMPLAIN! and SPANK! Don't really inspire confidence in the quality of your product.
The new error says "COMPLAIN!" and what has this whole thread been about?
-
@sloosecannon - Days Since Last Discourse Bug: 0
-
COMPLAIN! and SPANK! Don't really inspire confidence in the quality of your product.
We should reserve them for our discussions on Discourse! :p
-
I love it when people show up to defend their WTFs! Now, if we could just get yellow boxing glove guy back.
I'm starting to get the feeling that @boomzilla led @Carsten_Haitzler here for his own amusement.
-
Just to throw some more fuel on the fire.
Here is the first commit that included bitch! (albeit commented out):
https://git.enlightenment.org/legacy/evas.git/commit/src/lib/canvas/evas_stack.c?id=e928a2e8f6e975787eb3b884c852b0d4ef123e57
And then uncommented here:
https://git.enlightenment.org/legacy/evas.git/commit/src/lib/canvas/evas_stack.c?id=9c3620ce13b372a12100929e76c3bde6b39a8d8c
Discovering the identity of the committer of both is left as an exercise to the reader.
-
I'm starting to get the feeling that @boomzilla led @Carsten_Haitzler here for
hisour own amusement.post can't be empty
-
Just to throw some more fuel on the fire.
Here is the first commit that included bitch! (albeit commented out):
https://git.enlightenment.org/legacy/evas.git/commit/src/lib/canvas/evas_stack.c?id=e928a2e8f6e975787eb3b884c852b0d4ef123e57
And then uncommented here:
https://git.enlightenment.org/legacy/evas.git/commit/src/lib/canvas/evas_stack.c?id=9c3620ce13b372a12100929e76c3bde6b39a8d8c
Discovering the identity of the committer of both is left as an exercise to the reader.
And now to sit back and watch him try to defend/deflect/defuse… :popcorn.ps1:
-
COMPLAIN! and SPANK! Don't really inspire confidence in the quality of your product.
Sorry...
-
-
COMPLAIN! and SPANK! Don't really inspire confidence in the quality of your product
Needs more MOAN!, WRITHE!, WEEP!, WAIL!, REND GARMENTS!
-
> here for
hisour own amusement.Feel free to use
<del>
and<ins>
instead of<strike>
(or<s>
) - they're CSS'd to be more visible.For amusement.
BITCH.
-
Needs more MOAN!
Would that be an error message or a "Good work lad, you hit exactly the right button!" type of message?
Filled under/in: That's what she said!
-
Feel free to use <del> and <ins> instead of <strike> (or <s>) - they're CSS'd to be more visible.
For amusement.
BITCH.
tyvm, wasn't sure what the tags were for that and CBA'd to discosearch for it
-
Would that be an error message or a "Good work lad, you hit exactly the right button!" type of message?
Should be followed immediately by a NAUGHTY! message.
-
Should be followed immediately by a NAUGHTY! message.
Only if you actually hit the right button ... otherwise it will be a SLAP! message
-
Only if you actually hit the right button ... otherwise it will be a SLAP! message
Sure you're not confusing that with
KINKY!
?
-
Sure you're not confusing that with KINKY! ?
Most likely I HIT the wrong button and got switched to KINKY! mode. Good luck I stopped before reaching a GOLDEN_SHOWER error.
-
Would that be an error message
Rub two brain cells together to make fire and read the wiki.
-
Only if you actually hit the right button ... otherwise it will be a SLAP! message
It's a knitted doughnut, chill out
http://www.youtube.com/watch?v=k7B_oiPPUBY#t=15m50s