Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.lang.c    |    Meh, in C you gotta define EVERYTHING    |    243,242 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 241,344 of 243,242    |
|    BGB to Janis Papanagnou    |
|    Re: Nice way of allocating flexible stru    |
|    20 Oct 25 04:42:44    |
      From: cr88192@gmail.com              On 10/20/2025 3:02 AM, Janis Papanagnou wrote:       > On 15.10.2025 20:00, BGB wrote:       >> On 10/15/2025 5:26 AM, bart wrote:       >>> On 15/10/2025 02:13, BGB wrote:       >>>       >>>> There was ALGOL, but both C and Pascal descended from ALGOL.       >>>       >>> I've heard that before that C was somehow derived from Algol and even       >>> Algol 68.       >>>       >>> But it is so utterly unlike either of those, that if it's from the       >>> same family, then it must have been adopted.       >>       >> Idea is that it went ALGOL -> BCPL -> B -> C.       >> Going the other way, ALGOL was derived from FORTRAN.       >       > In which way do you think that Algol 60 was "derived from FORTRAN"?       >              Stuff online seems to say the backwards path went:        ALGOL 60 <- ALGOL 58 <- FORTRAN and Plankalkul              Granted, FORTRAN is a somewhat different language from ALGOL.                     Though, can note that a lot of the early languages, like early forms of       FORTRAN and COBOL, were line-oriented and tended to use line numbers and       requiring stuff to be in certain columns, ...              Though, ALGOL and its descendants generally went over to a more       free-form syntax.                     Arguably, FORTRAN and BASIC were some of the easier ways to approach       designing a language syntax.                     Say, if ranking languages by minimal complexity, maybe:        Level 1:        Limited forms of FORTH and G-Code        Can real line-by-line and evaluate tokens left to right;        Logic mostly driven directly by tokens.        Forth: Tokens drive a stack;        G-Code: Tokens set internal state/parameters.        Any command initiates at the end of the line.        Level 2:        Older forms of FORTRAN and BASIC        Can work line by line and match fixed patterns;        Can use fairly simple rules to split up tokens;        Can use basic pattern matching for an interpreter.        Level 3:        LISP, QBasic and Visual Basic, ALGOL, ...        Typically requires building an AST, etc.        Though, Lisp syntax can map directly to an AST.        Can be supported easily by a tree-walk interpreter.        Level 4:        JavaScript and similar;        Requires a full syntax tree and more advanced parser;        An interpreter can use a tree-walk or basic IR.        Level 5:        Languages like C;        Generally requires a full-featured type-system;        Language structure and parsing may depend on types;        Direct interpretation is not usually feasible;        ...                            > Janis       >              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca