Forum Rule: Always post complete source code & details to reproduce any issue!
Page 2 of 2 FirstFirst 1 2
Results 26 to 30 of 30

Thread: New Programming Resource

  1. #26
    Quote Originally Posted by MarkT View Post
    Different tools for different purposes - C is not suited for programming in the large or for high-level coding.
    The lack of array-bounds checking in C and C++ is partly responsible for the huge blight of viruses and trojans
    over the years as most vulnerabilities are due to this one rough-edge.
    Just because a language doesn't have a feature built in it doesn't mean that the programmers are forbidden from implementing it themselves.
    Those vulnerabilities are the result of sloppy coding.

  2. #27
    Senior Member
    Join Date
    Jul 2020
    I totally disagree, C is a low level language and even the best programmers shoot themselves in the foot with
    it sometimes, life is too short to use such a rough edged tool for general purpose coding - as I said use the
    right tool for the job. Here's a little example of why C / C++ isn't suitable for programming in the large:

    In the fairly early days of Java IBM wrote an alternative Java compiler in C++, called Jikes. Every single
    version of their compiler would SegV on some large Java input, I literally had to swap and change versions
    of Jikes to see which version might succeed with particular source code - often there was one that didn't
    crash, but not always the same version... This is purely down to the nature of C++ when programmed
    by humans - it was fast of course, which is why it was worth persevering with.

    For comparison I've can't recall ever having seen a Python program crash - the language or implementation
    are designed to be safe, you always get a an error or exception which can be handled as appropriate and of
    course the invaluable try-finally clause.

  3. #28
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Quote Originally Posted by econjack View Post
    I actually wrote to Paul before I wrote the first Intro book, because I really liked the Teensy family. However, Paul was probably too busy on the T4 to get back to me. All of the examples in the new book will run on the T4, but don't really show off what it's capable of.
    Sorry I missed your email. It wasn't you. I'm just bad at email....

  4. #29
    Senior Member
    Join Date
    Jul 2014
    Quote Originally Posted by MarkT View Post
    - as I said use the right tool for the job.
    But keep in mind, in the end all become machine language, even when interpreting p-code.
    So it depend a lot of your skills and mindset, right?
    So I would say, choose the tool that is right for the job and your skills.
    BTW, was not ADA designed to be safe and is still used in mission critical (including military) programs?

  5. #30
    Back when I tried ADA, it had little or no functions for visual output(one class assignment was to build a library of functions for VT220 terminals).
    This was supposedly to make it more platform independent... or something...

    There was built-in garbage commection and boundary checks. Even support for multi-threading.
    I used both a version on VAX VMS, and on DOS(Janus ADA), and the only difference was that the VAX version didn't have a 'Long Integer' type defined.
    So when I wrote program code at home and brought it to school, I had to uncomment a type declaration before it could run there if I had used a Long Integer.
    (All Integers on the VAX version were in reality Longs, unlike on PC where they were 16bit. )

    And ADA wasn't just used by the military, it was ordered by the US DoD...

    Back then, ADA was easy to learn if you had some Pascal experience. C programmers should also be able to pick it up pretty quickly. C++ programers, though, would have to first unlearn the notion that everything is pointers.

    I'd love to use ADA on the Teensy...

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts