Wirth on the importance of abstraction to language design

Поділитися
Вставка
  • Опубліковано 14 лис 2020
  • Niklaus Wirth, winner of the Association for Computing Machinery's A.M. Turing Award, discusses the importance of abstraction to language design. This clip is taken from an interview conducted with Wirth by Elena Trichina for the ACM on 13 March, 2018 in Zürich, Switzerland. Video of the full interview is available as part of Wirth’s ACM profile at amturing.acm.org/award_winner....

КОМЕНТАРІ • 15

  • @scottfranco1962
    @scottfranco1962 Рік тому +12

    As Wirth says, we have reverted to corporate sponsored languages. This is not new, pl/I was a corporate language from the 1960s (IBM). The issue is that languages are driven by perhaps %50 ideas and %50 hype (advertising). Corporations are the ones providing the hype at the moment.

    • @scottfranco1962
      @scottfranco1962 Рік тому +2

      @GSII Sp64b Too many of the languages that are out there today are not really designed, but aggregated.

    • @CianMcsweeney
      @CianMcsweeney 6 місяців тому

      we're slowly getting away from that in the last 5 years or so with newer languages developed by individuals and small independent groups beginning to appear: zig, jai, odin and to a lesser extent Rust (created by an individual but now backed by Mozilla). Obviously still in the early days, so not clear if these will succeed in terms of large scale adoption (rust of course is getting there), but promising signs nonetheless

  • @kamilziemian995
    @kamilziemian995 Рік тому +2

    Great short clip.

  • @MichaelKingsfordGray
    @MichaelKingsfordGray 2 роки тому +5

    My exact thoughts. Any "C" derived code is a disaster waiting to happen.

    • @Ryan-xq3kl
      @Ryan-xq3kl Рік тому +2

      so every code that exists?

    • @MichaelKingsfordGray
      @MichaelKingsfordGray Рік тому

      @@Ryan-xq3kl What ignorant rubbish!
      PASACAL is written in PASACAL, as is ADA.
      There are many languages written in assembler.
      There are many more real languages that were written without the abortion called "C".
      At best, you show naivety, more likely: ignorance.

    • @scottfranco1962
      @scottfranco1962 Рік тому +4

      Low level languages have their place, and Wirth himself has created low level languages. The original C manual mentioned it mainly being a language for system and low level concepts. The problem is that people then proceeded to make things like spreadsheets with it. This is akin to using a bandsaw to make a sandwich.

    • @MichaelKingsfordGray
      @MichaelKingsfordGray Рік тому

      @@scottfranco1962 Agreed. I tested "C", as a beta, before any manuals existed. C has a place: in the trash.

    • @CianMcsweeney
      @CianMcsweeney 6 місяців тому +2

      Yes and no, the simplicity of the specification of C as a language is something that all languages should aspire to, lessons have also been learned from C as to what not to do also: functions should be first class types, proper reflection/introspection and/or metaprogramming should be a first class feature instead of preprocessor macros, strings should be immutable and be pointer + length rather than null-terminated etc.

  • @ScoopexUs
    @ScoopexUs 5 місяців тому

    C/C++ really is something that should be left behind - regardless of whether modern languages are marketed more or liked more. The reason is that they are still stuck in the 1970s - they don't abstract more than a Macro Assembler would. C/C++ language are low-level languages, very close to the hardware. The problem is, they are used for low-level things, but also for things that we abstracted from in the 1970s.
    Largely, the American software industry is to blame for this grandfather regression and the corporate pushes for languages that are never finished, playing some silly game of dominance, rather than trying to make a great language.
    In the rest of the world, a software engineer has a greater chance of picking the right tool for the job, and leave a codebase that doesn't fail, crash, or won't even compile a few months later without incessant, frail, updates.