EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Language feature selection

Started by Don Y March 5, 2017
A quick/informal/UNSCIENTIFIC poll:

What *single* (non-traditional) language feature do you find most
valuable in developing code?  (and, applicable language if unique
to *a* language or class of languages)
Op 06-Mar-17 om 00:03 schreef Don Y:
> A quick/informal/UNSCIENTIFIC poll: > > What *single* (non-traditional) language feature do you find most > valuable in developing code? (and, applicable language if unique > to *a* language or class of languages)
I can't think of any language feature that is usefull in isolation. Wouter "Objects? No Thanks!" van Ooijen
On 06/03/17 00:03, Don Y wrote:
> A quick/informal/UNSCIENTIFIC poll: > > What *single* (non-traditional) language feature do you find most > valuable in developing code? (and, applicable language if unique > to *a* language or class of languages)
What do you mean be "non-traditional"? The two languages I find most useful in developing embedded code are English and C, followed by Norwegian, C++ and assembly. If these count as "traditional", then maybe it would be Python - that's the language I use most for scripts, auxiliary programs, test programs, etc.
On 05/03/17 23:03, Don Y wrote:
> A quick/informal/UNSCIENTIFIC poll: > > What *single* (non-traditional) language feature do you find most > valuable in developing code? (and, applicable language if unique > to *a* language or class of languages)
Understandabililty, of the language and of programs written in that language.
On 06.3.2017 г. 01:03, Don Y wrote:
> A quick/informal/UNSCIENTIFIC poll: > > What *single* (non-traditional) language feature do you find most > valuable in developing code? (and, applicable language if unique > to *a* language or class of languages)
Flexibility/expandability. In vpa if I miss something for a while I can simply implement it rather than work around it every time. Flexibility also means that being the lowest sensible level it allows me to go to higher levels of abstraction without changing language (with high level languages you can do that too on the way up, not so on the way down hence the tons of workarounds/ manufacturer libraries/templates etc. "unchangeable" thing which dominate nowadays). IOW the most useful part of using vpa is the one which makes its use like using an alphabet as opposed to using a phrase book (the case with higher level languages). Dimiter ------------------------------------------------------ Dimiter Popoff, TGI http://www.tgi-sci.com ------------------------------------------------------ http://www.flickr.com/photos/didi_tgi/
On 06/03/17 08:40, David Brown wrote:
> On 06/03/17 00:03, Don Y wrote: >> A quick/informal/UNSCIENTIFIC poll: >> >> What *single* (non-traditional) language feature do you find most >> valuable in developing code? (and, applicable language if unique >> to *a* language or class of languages) > > What do you mean be "non-traditional"? > > The two languages I find most useful in developing embedded code are > English and C, followed by Norwegian, C++ and assembly. > > If these count as "traditional", then maybe it would be Python - that's > the language I use most for scripts, auxiliary programs, test programs, > etc. >
Having read the other replies, I see you asked for "language /feature/", not "language". Sorry! As Wouter said, I don't think it is possible to pick a single language feature like that. You want a language that gives you a balance of features - readability, maintainability, flexibility, efficiency, static error checking, high-level features, existing libraries, development efficiency, debug capabilities, etc. The balance may change according to different projects or applications.
On 3/6/2017 1:39 AM, Tom Gardner wrote:
> On 05/03/17 23:03, Don Y wrote: >> A quick/informal/UNSCIENTIFIC poll: >> >> What *single* (non-traditional) language feature do you find most >> valuable in developing code? (and, applicable language if unique >> to *a* language or class of languages) > > Understandabililty, of the language and of programs > written in that language.
Isn't that dependant on the characteristics of the language and how its applied? E.g., APL is as understandable as COBOL... Do you count syntactic complexity as contradicting that goal? Or, enhancing it? E.g., is C's trinary operator an *improvement* or *detriment* (over a move explicit use of conditionals) to "understandability"? Does Limbo's combination of "declare and define" syntax (as an alternative to independent declarations and definitions) improve understandability? How does "terseness" factor into that calculus (as an aid or detriment)?
On 3/6/2017 12:40 AM, David Brown wrote:
> On 06/03/17 00:03, Don Y wrote: >> A quick/informal/UNSCIENTIFIC poll: >> >> What *single* (non-traditional) language feature do you find most >> valuable in developing code? (and, applicable language if unique >> to *a* language or class of languages) > > What do you mean be "non-traditional"?
I suspect we'd all agree that the ability to support "procedures" is highly valuable (imagine writing a complex piece of code *without* being able to invoke one). And, that adding support for functions enhances this capability (though functions without procedures makes little sense) Call these (and similar) "traditional" features: "Givens".
> The two languages I find most useful in developing embedded code are > English and C, followed by Norwegian, C++ and assembly. > > If these count as "traditional", then maybe it would be Python - that's > the language I use most for scripts, auxiliary programs, test programs, > etc. >
On 06/03/17 15:39, Don Y wrote:
> On 3/6/2017 1:39 AM, Tom Gardner wrote: >> On 05/03/17 23:03, Don Y wrote: >>> A quick/informal/UNSCIENTIFIC poll: >>> >>> What *single* (non-traditional) language feature do you find most >>> valuable in developing code? (and, applicable language if unique >>> to *a* language or class of languages) >> >> Understandabililty, of the language and of programs >> written in that language. > > Isn't that dependant on the characteristics of the language > and how its applied? E.g., APL is as understandable as COBOL... > > Do you count syntactic complexity as contradicting that goal? > Or, enhancing it? > > E.g., is C's trinary operator an *improvement* or *detriment* > (over a move explicit use of conditionals) to "understandability"? > Does Limbo's combination of "declare and define" syntax (as > an alternative to independent declarations and definitions) > improve understandability? How does "terseness" factor into > that calculus (as an aid or detriment)?
Simplicity aids understanding. If complexity leads to simpler programs, then it is acceptable. But usually complexity will end up being poorly used. Hence I prefer simplicity. Terseness helps, when not taken to extremes. Verbosity helps, when not taken to extremes. Good taste is important. Being explicit and unambiguous is very important; artifacts that worsen those are to be deprecated.
On Sun, 5 Mar 2017 16:03:25 -0700, Don Y <blockedofcourse@foo.invalid>
wrote:

>A quick/informal/UNSCIENTIFIC poll: > >What *single* (non-traditional) language feature do you find most >valuable in developing code? (and, applicable language if unique >to *a* language or class of languages)
Closures. Far more useful than (OO) objects. YMMV. George

The 2024 Embedded Online Conference