Computer Language from Scratch #1 Introducing MIN

Поділитися
Вставка
  • Опубліковано 27 жов 2024

КОМЕНТАРІ • 22

  • @francoisdastardly4405
    @francoisdastardly4405 2 роки тому +3

    Man ! Incredible amount of work. Awesome !!

    • @slu467
      @slu467  2 роки тому +1

      Thanks for following, Francois, glad you like this one, too!

  • @hallomeinnameistkarl216
    @hallomeinnameistkarl216 2 роки тому +2

    Very Cool, I mean, you just Created your Own Computer Language! Absolutely Incredible!!!

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

    Just brilliant ! Are you recommending additional readings on computer language creation ? I do like the way you keep it minimalist still providing comprehensive and detailed knowledge at the same time.
    For example, the way you use class g: to keep pc, etc ... as global variables in python is really cool. It is definitely easier to understand than tons of codes using High level abstraction with oop at all corners.
    Are you looking to even add new features to min ? To make any evolution of your python interpreter ? To create a compiler (min to assembly ?) for your minimal system ?
    Here, you have combined the final representation of min in python very close to the EBNF notation of your language grammar, which is definitely great. Are you even looking to add additional comments in your min interpreter written in python for educational purpose ?
    It would be excellent to get exercices, then associated solution, from you about min extension.
    For example, How-to add floating type, 2 dimensional arrays, or anything else to min, just to better understand how you start from extending the min grammar in EBNF notation up to adding the new feature into the python interpreter !
    I was starting to use ANTLR for creating a parser, but it is so much confusing at start that I'm even not sure to get to the point.
    I know ANTLR is a powerful tool to create parser but I realize this is adding huge complexity compared to create our own parser from hand; at least from a pure educational perspective.
    I'm also curious about the C++ implementation you made with additional features like include, Hex numbers, etc
    Again thank you for such videos and projects you shared. Just brilliant !

    • @slu467
      @slu467  Рік тому +1

      Hey Yves, thanks a lot for deep-diving into Min ;-) Actually, I am currently working on Min again. I am about to publish a full TTL "Minimal 64 Home Computer" design with VGA and PS/2. I'd like to have Min run on that system. So I am carefully extending Min to be both simpler (yes, it's possible ;-) *and* capable of direct memory and stack access. Min 1 was kind of sealed off in its box while Min 2 will be able to use API assembly functions etc. So Min is going to be a bit more "low level" oriented, kind of a cross-over of Python and C with strong and explicit typing. Cheers!

  • @IBITZEE
    @IBITZEE Рік тому +1

    did I already mentioned that you are a genius?,,, oh yes,,, in a previous video... ;-)

    • @slu467
      @slu467  Рік тому +1

      Hey, ZEE IBIT, thanks for checking out my channel :-) My next video will feature a full DIY home computer: 61 TTL IC running Space Invaders 🙂

  • @sandroormeno
    @sandroormeno 2 роки тому +1

    you are really big inspiration, man, thank you very much. i hope make my own soon.

    • @slu467
      @slu467  2 роки тому +1

      Thanks, man! Min is coming very soon for the "Minimal CPU".

  • @Gsus__17
    @Gsus__17 2 роки тому +1

    great job, looking forward to porting tetris to min on vga screen

  • @kippie80
    @kippie80 3 місяці тому

    Back in day lex and yak were the tools to use to create a language.

  • @zlatkovidlanovic6454
    @zlatkovidlanovic6454 7 місяців тому

    hi slu4 ..it is amazing and i like it very much..
    at moment i would like to translate thid code to o2 compiler ..
    MIN ..don't have separate tokenizer ?
    so i am not sure why have 2 separate function to collect chars into tokens
    can you explain that ?
    also func Next() ..suposed to return non-white char as you said in comment
    but simply stuck in endless loop runining trough blank ' ' , tab \9 etc ...
    also which function is main RUN function ...is it Block() ?

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

      Hi, good so see you got it working. Unfortunately, I can't be much of an assistance with your detailed questions, since I did this a long time ago. I've published the latest version of Min on my Minimal 64x4 home computer. But the whole point of my video is to get you to try and figure it out yourself ;-)

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

      Hi slu4..no problem ..i am interested in how you implement user functionin MIN ..i hope that i will figure it ..all best!!!@@slu467

  • @ithaca2076
    @ithaca2076 2 роки тому

    i wondered where you went !

  • @lillupad4043
    @lillupad4043 2 роки тому

    ay could you try make it run on computers that dont have msvcrt? angry mac user here

  • @ayoodawg1104
    @ayoodawg1104 2 роки тому

    Now make it compilable for the minimal PC.

    • @slu467
      @slu467  2 роки тому +1

      Yep, that's ultimately my goal. Interpreter or compiler or both running on the Minimal.

  • @therealchonk
    @therealchonk 2 роки тому +1

    Guten Tag.