[HN Gopher] Birth of BASIC (2014) [video]
       ___________________________________________________________________
        
       Birth of BASIC (2014) [video]
        
       Author : nyc111
       Score  : 43 points
       Date   : 2023-12-11 16:23 UTC (1 days ago)
        
 (HTM) web link (www.youtube.com)
 (TXT) w3m dump (www.youtube.com)
        
       | nliang86 wrote:
       | https://www.videogist.co/videos/birth-of-basic-1720
        
       | nyc111 wrote:
       | They emphasize several times that "this was all before Bill
       | Gates".
        
       | pjmlp wrote:
       | One interesting thing about original BASIC, is that it was JIT
       | compiled.
       | 
       | The REPL always compiled into native code before execution.
       | 
       | Interpreters only came later with the adoption on 8 bit
       | computers, which naturally didn't had the hardware resources for
       | that.
        
       | whartung wrote:
       | Here are my curiosities about BASIC history.
       | 
       | * When did the MS style tokenized, interpreted BASIC start?
       | 
       | By this I mean, in MS BASIC, you have tokens that are evaluated.
       | You enter text, the system tokenizes it, then when you run it,
       | the interpreter does a combination of parsing and executing the
       | tokens. It also reconstructs the program listing from the
       | tokenized form. Curious what the origin of this style of BASIC
       | was. Gate et al were clever, but I don't think they were that
       | clever. I think this was borrowed from something else.
       | 
       | * Why was the original BASIC-PLUS from DEC done the way it was?
       | 
       | Unlike MS BASIC, B+ was compiled into an intermediate code (a
       | stack machine as I understand it), and then executed. But this
       | was done incrementally. As lines were entered, they were
       | compiled, and put into place within the overall program. The
       | original source was retained for editing, so you inevitably had
       | two copies of the program: the source, and the compiled code,
       | which isn't particularly efficient on the small machines of the
       | day, but it ostensibly executed faster.
       | 
       | You could "compile" B+, but that was more saving the runtime
       | image to disk, without source code.
        
         | wvenable wrote:
         | All my research seems to indicate that tokenizing BASIC code on
         | input was first done for Altair BASIC written by Gates and
         | Allen. I'm not sure why you think they wouldn't be clever
         | enough to come up with it. It's probably the only way one could
         | get BASIC to work in the 4K of RAM available on the Altair.
        
         | crq-yml wrote:
         | At the time, while there was a lot of developing theory around
         | string parsing and tokenization, a lot of the formal theory
         | being crafted led to impractical implementations. At the same
         | time, interactive coding was relatively new: a lot of systems
         | were still using punchcards. I think this combination of
         | constraints is why you would see things like the IBM 63-pass
         | Fortran compiler[0]. But at the same time, Chuck Moore was
         | working on Forth systems and had the sense to go in the
         | direction of tokenization at input time, so I would point to
         | him as one of the originators of the style.
         | 
         | [0] https://retrocomputingforum.com/t/ibms-63-pass-fortran-
         | compi...
        
       | lucb1e wrote:
       | BASIC should be uppercased in the title, then everyone will
       | instantly get the subject of the video and that's also the title
       | used by the submission
        
         | dang wrote:
         | Fixed now. Thanks!
        
       | dang wrote:
       | Related:
       | 
       |  _Birth of BASIC (2014) [video]_ -
       | https://news.ycombinator.com/item?id=23830201 - July 2020 (36
       | comments)
        
       ___________________________________________________________________
       (page generated 2023-12-12 23:01 UTC)