Announcement

Collapse
No announcement yet.

Modula-2 Programming Language Front-End Still Looking Towards Mainline GCC In 2021

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • hoohoo
    replied
    Originally posted by danmcgrew View Post

    Here's the full quotation commonly attributed to Dr. Parnas. Parnas wrote a very large number of papers, and quotations of his are usually taken from those papers. I do not know, unfortunately, from what larger body of work this was taken.
    Thanks!

    Originally posted by danmcgrew View Post
    "... A module was a work assignment, not a subroutine or other language element. ...‭" ‬--David L.‭ ‬Parnas
    I like that. I like that a lot.

    (edit) Either Kernigan or Ritchie once said that C, qua language, is the simplest model of a load/store computer that they could come up with. I think it's success is due to that. When I said above that it is a very flexible language, it's because it imposes few if any restrictions on the structure of the software written using it.
    Last edited by hoohoo; 21 June 2021, 10:17 PM. Reason: To add a thought.

    Leave a comment:


  • danmcgrew
    replied
    Originally posted by hoohoo View Post

    The first two paragraphs I think I understand, and they seem reasonable. The third paragraph I don't understand. It seems like a non sequitor.

    TBH, after working in universities for a bunch of years I did learn that looking fashionable plays as big a role there as anywhere. There may be a more easily understood substitute for paragraph three. Looking fashionable or not can affect getting tenure: fashion can get you a gang and a gang will vote for you or make other docs vote for you. So, the standard model and then string theory was all the rage in physics despite both being woefully underdetermined, and new 'theories' of human behavior infect social scientist clades more virulently than COVID19, and comp sci profs have to produce new languages the will fix the world.
    Here's the full quotation commonly attributed to Dr. Parnas. Parnas wrote a very large number of papers, and quotations of his are usually taken from those papers. I do not know, unfortunately, from what larger body of work this was taken.

    "My early work clearly treated modularisation as a design issue,‭ ‬not a language issue.‭ ‬A module was a work assignment, not a subroutine or other language element.‭ ‬Although some tools could make the job easier,‭ ‬no special tools were needed to use the principal,‭ ‬just discipline and skill.
    When language designers caught on to the idea,‭ ‬they assumed that modules had to be subroutines,‭ ‬or collections of subroutines,‭ ‬and introduced unreasonable restrictions on the design.‭ ‬They also spread the false impression that the important thing was to learn the language‭; ‬in truth,‭ ‬the important thing is to learn how to design and document.
    We are still trying to undo the damage caused by the early treatment of modularity as a language issue and,‭ ‬sadly, we still try to do it by inventing languages and tools.‭"
    ‬--David L.‭ ‬Parnas

    Leave a comment:


  • hoohoo
    replied
    Originally posted by danmcgrew View Post

    ‭"...To a Computer Scientist, everything looks like a language design problem. Languages and compilers are, in their opinion, the only way to drive an idea into practice.
    ...language designers...spread the false impression that the important thing was to learn the language‭; ‬in truth,‭ ‬the important thing is‭ ‬to learn how to design and document...
    "...We are still trying to undo the damage caused by the early treatment of modularity as a language issue and,‭ ‬sadly, we still try to do it by inventing languages and tools.‭" ‬--David L.‭ ‬Parnas

    The first two paragraphs I think I understand, and they seem reasonable. The third paragraph I don't understand. It seems like a non sequitor.

    TBH, after working in universities for a bunch of years I did learn that looking fashionable plays as big a role there as anywhere. There may be a more easily understood substitute for paragraph three. Looking fashionable or not can affect getting tenure: fashion can get you a gang and a gang will vote for you or make other docs vote for you. So, the standard model and then string theory was all the rage in physics despite both being woefully underdetermined, and new 'theories' of human behavior infect social scientist clades more virulently than COVID19, and comp sci profs have to produce new languages the will fix the world.

    Leave a comment:


  • danmcgrew
    replied
    Originally posted by hoohoo View Post

    ...ever since it became dominant ppl have been inventing new languages to save us from C's flexibility...
    ‭"...To a Computer Scientist, everything looks like a language design problem. Languages and compilers are, in their opinion, the only way to drive an idea into practice.
    ...language designers...spread the false impression that the important thing was to learn the language‭; ‬in truth,‭ ‬the important thing is‭ ‬to learn how to design and document...
    "...We are still trying to undo the damage caused by the early treatment of modularity as a language issue and,‭ ‬sadly, we still try to do it by inventing languages and tools.‭" ‬--David L.‭ ‬Parnas


    Leave a comment:


  • hoohoo
    replied
    Originally posted by c117152 View Post

    Flexibility is a good way of putting it since the more range of motion you have in a given movement, the more muscle you need to recruit to go through that fuller range of motion and the more tension your tendons need to handle.

    Often enough, less is better.
    I had a longer reply, with an example. But Phoronix doesn't want to accept it for some reason. So, I'll just say, well said, I like your answer.

    Leave a comment:


  • hoohoo
    replied
    Originally posted by c117152 View Post

    Flexibility is a good way of putting it since the more range of motion you have in a given movement, the more muscle you need to recruit to go through that fuller range of motion and the more tension your tendons need to handle.

    Often enough, less is better.
    I suppose there is a degree of personal programming style. Back when I learned C I was working on a graphics processing library, and to do some filters it made sense to, for example, sum the R, G or B values of several adjacent pixels and then divide by the number of pixels. The RGB channels were uint8 and adding a bunch would overflow a single byte. So I could sum them up into a uint16, divide that by the number of pixels and cast that to a uint8 for the result. In C it was just casting with like (unsigned char). In Pascal it was more complicated. In some languages the compiler will refuse to compile a cast of that nature. Which IMO is too inflexible. I should have the freedom to do such a cast, even if I risk shooting myself in the foot. It's on me if my foot gun goes off, not the language, I should know not to cast 64 bit pointer to a 32 bit int and back, you know? But that's just my opinion.

    Leave a comment:


  • alcalde
    replied
    I'm holding out for Modula 3 appearing somewhere around 2030 or so.

    Leave a comment:


  • alcalde
    replied
    Originally posted by wizard69 View Post
    Why?

    Back in the day RIT was teaching with Modula 2 and honestly I never saw the point. Of course back then we didn't have the huge standard libraries that most languages come with these days.
    RIT? That's where I learned Modula 2 too.

    Leave a comment:


  • c117152
    replied
    Originally posted by hoohoo View Post
    C was a dominant language in the Linux/UNIX world. I just wanted to write software, and C is IMO an extremely flexible language.
    Flexibility is a good way of putting it since the more range of motion you have in a given movement, the more muscle you need to recruit to go through that fuller range of motion and the more tension your tendons need to handle.

    Often enough, less is better.

    Leave a comment:


  • hoohoo
    replied
    Originally posted by c117152 View Post

    Not sure how going from C to Modula 2 is backwards in any way... But I think most of Modula2's userbase ended up using Free Pascal so I can't blame you

    Anyhow, Go combines Oberon and C rather well so you'd do well to check it out once generics are out later in the year.
    C was a dominant language in the Linux/UNIX world. I just wanted to write software, and C is IMO an extremely flexible language. So flexible that ever since it became dominant ppl have been inventing new languages to save us from C's flexibility. Modula or Oberon, one could not always find a compiler for one's platform, and then I liked the C typecast method also.

    Leave a comment:

Working...
X