from Hacker News

I created the BIPLAN programming language, what do you think about it?

by gioscarab on 2/14/21, 9:23 AM with 19 comments

  • by sgtnoodle on 2/16/21, 7:26 AM

    The project looks interesting. I am always a fan of embedded virtual machines. I have some questions after skimming the documentation.

    Why do built-in functions use a keyword/operator syntax for arguments, while user defined functions use parentheses? That seems confusing (and was deemed a mistake in python worthy of a decade of pain to remedy.) It would certainly make sense to special case their implementation in byte code for efficiency, but since there's a compilation step, why does the syntax need to change?

    Why did you choose to go with Arduino function names? Do you like the camelCasing?

    Why is there both a "next" keyword and a "continue" keyword? Don't they basically do the same thing? If the purpose of "next" specifically is to mark the end of scope of the loop, why not use the word "done" or another word that isn't synonymous with "continue"?

    If space and efficiency are a priority, and there's a compiler from a higher level language, why did you go with an ASCII-code rather than a true byte-code? That gives you 95 visible characters per byte, which seems to potentially waste 18% or so of program space.

  • by airstrike on 2/16/21, 5:54 AM

    Meta comment: Most posts like these start with "Show HN:" in the title so that others know it's something you created and want to get feedback on, so maybe consider changing your title to match that custom ;-)

    https://news.ycombinator.com/show

  • by gioscarab on 2/14/21, 9:24 AM

    BIPLAN (Byte-coded Interpreted Programming Language) is an experimental programming language based on a recursive descent parser that uses only static memory allocation and operates a completely software-defined virtual machine that does not require a garbage collector. It's human-readable language called BIPLAN is compiled in an 7-bit ASCII virtual-machine language called BIP.
  • by besnn00 on 2/14/21, 9:55 AM

    Looks cool. I’m guessing this is for embedded, right?
  • by gioscarab on 2/16/21, 11:06 AM

    Any of you would help me to run it on Windows/Linux? I would need some help with the system calls
  • by sshine on 2/16/21, 6:27 AM

    Looks cool! Why is all your code in .h files?
  • by sam0x17 on 2/16/21, 6:16 AM

    This is a beautiful little language. Have you looked at Zig? Similar aim.
  • by captainredbeard on 2/16/21, 4:07 PM

    Fun but a toy