 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
... This is exactly right.
http://www.embedded.com/222300586
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 16-1-2010 5:18, Darren New wrote:
> ... This is exactly right.
>
> http://www.embedded.com/222300586
>
Interesting timing. I just yesterday started reading in the book that we
are using to teach our first year students to learn C to program
microcontrollers. I was going to sit down with some music to continue
when I read your e-mail.
I'll ask my colleague that teaches this course what he thinks about this
issue.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Perhaps this says more about C's (un)suitability as a programming
language. The author seems to think the problem is poor programmers; how
about a language that contains incomprehensible declarations and
constructs (pointers) that virtually guarantee runtime errors? Hint:
look at Java."
That was half-plausible - right up until the final sentence.
Yes, because Java is *totally suitable* for embedded programming. Oh,
wait...
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"This test only measures my knowledge of some obscure C trivia; as
others have already written, I try very hard to avoid this kind of C
statements anyway. I use parenthesis and typedefs to increase
readability. This test says NOTHING about my real coder and
problem-solving skills."
Seems about right to me...
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v8 <voi### [at] dev null> wrote:
> "This test only measures my knowledge of some obscure C trivia; as
> others have already written, I try very hard to avoid this kind of C
> statements anyway. I use parenthesis and typedefs to increase
> readability. This test says NOTHING about my real coder and
> problem-solving skills."
> Seems about right to me...
Well, I'd say the problem is two-fold: On one hand it *is* often a good
idea to avoid obscure "hackerish" solutions which (ab)use seldomly needed
features of the language (just because it might eg. make the code shorter
or a few clock cycles faster). On the other hand, a good C(++) programmer
ought to *know* what those seldomly needed features are and how they work
(in other words, when asked, he should at least have an idea of what it
means and how it works), even if he never uses them. This is especially
true for C, given that it's a relatively short language specification.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v8 wrote:
> Yes, because Java is *totally suitable* for embedded programming. Oh,
> wait...
I hate to say this, but Java was *designed* for embedded programming.
Indeed, lots and lots of cell phones only run Java user apps. It was
originally designed for programming cable TV set top boxes.
Which is not to say it hasn't evolved away from that.
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v8 wrote:
> This test says NOTHING about my real coder and problem-solving skills."
IME, if you don't know this sort of detail, you don't have the real
problem-solving and architecture skills. This is about what I've noticed.
Everyone programs like they're building the hardware, not programming it.
They worry about things like the overhead of a while loop vs a goto in a
routine that gets invoked once every time you start playing a video, making
the programs pretty much unreadable.
The API I'm using, for example, isn't documented. All you have is the "test"
program, which is about 8000 lines of top-level code (i.e., all in main())
with no comments. Good luck figuring that out.
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New wrote:
> IME, if you don't know this sort of detail, you don't have the real
Blah blah blah. Or maybe I'm just a cranky fart who ought to be doing
something else.
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> Orchid XP v8 wrote:
> > Yes, because Java is *totally suitable* for embedded programming. Oh,
> > wait...
>
> I hate to say this, but Java was *designed* for embedded programming.
> Indeed, lots and lots of cell phones only run Java user apps. It was
> originally designed for programming cable TV set top boxes.
yes, and thankfully 2 things help make it possible too:
1) phone is always on so whatever the java startup cost is hidden
2) no
tomcat/web-framework-of-the-week/netbeans/insert-fav-humongous-java-lib-here in
sight
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> Darren New wrote:
> > IME, if you don't know this sort of detail, you don't have the real
>
> Blah blah blah. Or maybe I'm just a cranky fart who ought to be doing
> something else.
that was not me, I swear.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> The API I'm using, for example, isn't documented. All you have is the "test"
> program, which is about 8000 lines of top-level code (i.e., all in main())
> with no comments. Good luck figuring that out.
The joys of spaghetti code. Structured programming and especially
modularity is for wimps.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> I hate to say this, but Java was *designed* for embedded programming.
I wonder about their design choices given that it was intended originally
for *embedded* (rather than desktop) systems. "Embedded system" usually
implies extremely low amount of RAM and very slow processors (especially
back when Java was first designed). Even if the Java program could be
compiled to native machine code for the target system (are there any such
compilers in actuality, for any embedded system?) which would mostly solve
the speed problem, it would still suffer from the memory consumption problem.
No statically allocatable objects (including no support for arrays of
objects) and all objects always having dynamic binding means inevitably
increased memory consumption. (Also constant allocation/deallocation of
objects induces memory fragmentation, increasing overall memory consumption
as time passes, unless the system implements some form of memory
defragmentation scheme, which might be implausible for an embedded system,
especially at that time.)
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
nemesis wrote:
> 1) phone is always on so whatever the java startup cost is hidden
"Startup cost" for Java is pretty low if you're serving everything out of
RAM. It's copying it from disk to RAM that's the main 'startup cost'.
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New wrote:
> nemesis wrote:
>> 1) phone is always on so whatever the java startup cost is hidden
>
> "Startup cost" for Java is pretty low if you're serving everything out
> of RAM. It's copying it from disk to RAM that's the main 'startup cost'.
that too.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Darren New <dne### [at] san rr com> wrote:
>> I hate to say this, but Java was *designed* for embedded programming.
>
> I wonder about their design choices given that it was intended originally
> for *embedded*
I think the idea was that they were targeting two primary things:
1) Portability, so you didn't have to rewrite your EPG-download code over
again every time you released a new cable modem in your set-top box, and
2) Reliability, because when you have 100,000 customers, a crash for 1% of
them once a month is a fatal problem.
I would imagine stuff like codecs would still be native code. It's the stuff
like user interfaces and interfacing to the provisioning systems you'd want
to be portable.
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
nemesis wrote:
> Darren New <dne### [at] san rr com> wrote:
>> Darren New wrote:
>>> IME, if you don't know this sort of detail, you don't have the real
>> Blah blah blah. Or maybe I'm just a cranky fart who ought to be doing
>> something else.
>
> that was not me, I swear.
Huh? What made you think I was saying anything about you in a post
following up my own post bitching about a topic you haven't discussed?
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New wrote:
> nemesis wrote:
>> Darren New <dne### [at] san rr com> wrote:
>>> Darren New wrote:
>>>> IME, if you don't know this sort of detail, you don't have the real
>>> Blah blah blah. Or maybe I'm just a cranky fart who ought to be doing
>>> something else.
>>
>> that was not me, I swear.
>
> Huh? What made you think I was saying anything about you in a post
> following up my own post bitching about a topic you haven't discussed?
oh. I thought it was someone else posting under your name and calling
you a "cranky fart". People are kinda mad around here with me already
and could be framming me. :P
Though I have to admit when I read your reply to me about smallptGPU
about "hey, I have an idea" I had a gut instinct of calling you a sad
old man. :)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 16-1-2010 20:39, Warp wrote:
> Darren New <dne### [at] san rr com> wrote:
>> I hate to say this, but Java was *designed* for embedded programming.
>
> I wonder about their design choices given that it was intended originally
> for *embedded* (rather than desktop) systems. "Embedded system" usually
> implies extremely low amount of RAM and very slow processors (especially
> back when Java was first designed). Even if the Java program could be
> compiled to native machine code for the target system (are there any such
> compilers in actuality, for any embedded system?) which would mostly solve
> the speed problem, it would still suffer from the memory consumption problem.
>
> No statically allocatable objects (including no support for arrays of
> objects) and all objects always having dynamic binding means inevitably
> increased memory consumption. (Also constant allocation/deallocation of
> objects induces memory fragmentation, increasing overall memory consumption
> as time passes, unless the system implements some form of memory
> defragmentation scheme, which might be implausible for an embedded system,
> especially at that time.)
When connecting an I2C AD converter to a Lego NXT brick* it appeared
that Java does not have an unsigned 8bit datatype. Seems rather basic
for embedded to me. Or am I overlooking something?
Don't know if I mentioned before, but our 1st year students were doing a
project where they had to build a robot using Lego.
There were 6 teams of two groups. One to build a robot to navigate on a
6 by 6 meter playfield with 5 barrels and find the barrel with a magnet.
Then send the coordinates to the other group that had to build a robot
to retrieve it.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 16-1-2010 22:08, nemesis wrote:
> Darren New wrote:
>> nemesis wrote:
>>> Darren New <dne### [at] san rr com> wrote:
>>>> Darren New wrote:
>>>>> IME, if you don't know this sort of detail, you don't have the real
>>>> Blah blah blah. Or maybe I'm just a cranky fart who ought to be doing
>>>> something else.
>>>
>>> that was not me, I swear.
>>
>> Huh? What made you think I was saying anything about you in a post
>> following up my own post bitching about a topic you haven't discussed?
>
> oh. I thought it was someone else posting under your name and calling
> you a "cranky fart".
I don't think anything remotely like that ever happened here. I mean
posting under another name. Self-mockery is quite common.
> People are kinda mad around here with me already
Don't know where you get that impression from. (and that is not ironic
or sarcastic)
> and could be framing me. :P
What? Don't make yourself more important than you are.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
nemesis wrote:
> Though I have to admit when I read your reply to me about smallptGPU
> about "hey, I have an idea" I had a gut instinct of calling you a sad
> old man. :)
It's kind of a running joke, given that someone without any knowledge of how
POV works internally suggests that all of POV could be sped up by porting it
to GPUs about twice a year or so.
--
Darren New, San Diego CA, USA (PST)
Forget "focus follows mouse." When do
I get "focus follows gaze"?
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> The joys of spaghetti code. Structured programming and especially
> modularity is for wimps.
That's right. Because writing utterly incomprehensible code structured
in the most complicated way possible proves how clever you are, right?
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New wrote:
> nemesis wrote:
>> Though I have to admit when I read your reply to me about smallptGPU
>> about "hey, I have an idea" I had a gut instinct of calling you a sad
>> old man. :)
>
> It's kind of a running joke, given that someone without any knowledge of
> how POV works internally suggests that all of POV could be sped up by
> porting it to GPUs about twice a year or so.
I'm aware of that which is why I hinted at using it to speed up just
pov's ray-triangle intersections.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v8 wrote:
> Warp wrote:
>
>> The joys of spaghetti code. Structured programming and especially
>> modularity is for wimps.
>
> That's right. Because writing utterly incomprehensible code structured
> in the most complicated way possible proves how clever you are, right?
No, you're not clever enough while you haven't written a Haskell monoid
using nothing but closures. :)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
andrel wrote:
>> and could be framing me. :P
>
> What? Don't make yourself more important than you are.
yes, I guess that was a bit paranoid. :P
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |