[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Tinyos-devel] RE: [avr-gcc-list] Fwd: [Tinyos-help] TinyOs avr-gcc-

From: Eric Weddington
Subject: RE: [Tinyos-devel] RE: [avr-gcc-list] Fwd: [Tinyos-help] TinyOs avr-gcc-4
Date: Tue, 16 Oct 2007 21:33:55 -0600

> -----Original Message-----
> From: Philip Levis [mailto:address@hidden
> Sent: Tuesday, October 16, 2007 5:55 PM
> To: Eric Weddington
> Cc: 'John Regehr'; 'David Gay'; 'Eric Gnoske'; 'Avr List
> Server'; 'TinyOS Development'; address@hidden
> Subject: Re: [Tinyos-devel] RE: [avr-gcc-list] Fwd:
> [Tinyos-help] TinyOs avr-gcc-4
> On Oct 16, 2007, at 1:38 PM, Eric Weddington wrote:
> Come on, Eric, you could at least read the few pages before sounding
> off. The point of the chapter isn't that nesC provides namespaces in
> the C++ sense (it doesn't). Rather, by separating the naming scopes
> of callers and callees, it allows callbacks to be statically defined
> without requiring either side to know about the relationship. This
> prevents the need for function pointers, reduces RAM use, improves
> robustness, and allows cross-call optimization. It also makes system
> composition easier. Furthermore, compile-time functions enable
> precise RAM provisioning and full state encapsulation through
> function parameters nesC can insert at compile-time. Finally, nesC
> automatically detects data races by explicitly understanding the
> difference between main() and interrupt contexts.

Fantastic. I'd like to see all of those get in the C standard.

> I'm happy to learn why switching to C, C++, or Ada might not
> have the
> limitations I think it does.

Agreed that they all have their own limitations.

> All I'd ask before starting such a
> discussion, though, is that you actually take a close look at
> nesC so
> you understand the benefits it provides and why people might choose
> to use it.

Sure, benefits abound. Makes writing stacks easier. Uses less resources. I
always love more optimization.

I'd like to understand how one expects real companies to risk their business
plan on an academic language that a limited number of university graduates
know, and that doesn't even have usable toolchain on the Windows platform
where, let's say, 85%+ engineering work occurs. It's a rhetorical question,
for sure.

Don't get me wrong. I respect everyone's work on TinyOS/NesC, yours, David
Gay's (including work on avarice), David Culler's, John's work on other
tools, the work done on Avrora, people in the industry, and other people I'm
sure their names I've forgotten. What I'd like to find is somewhere where we
can meet in the middle, where we all win. TinyOS is a great idea for sensor
networks. I'd like to be able join forces to promote it further. I don't see
how I can promote use of NesC to a wider audience where there are still
arguments between assembly vs. C, and C++ is just starting to make inroads.

Eric Weddington

reply via email to

[Prev in Thread] Current Thread [Next in Thread]