this post was submitted on 27 Jul 2024
112 points (98.3% liked)
Programming Languages
1186 readers
1 users here now
Hello!
This is the current Lemmy equivalent of https://www.reddit.com/r/ProgrammingLanguages/.
The content and rules are the same here as they are over there. Taken directly from the /r/ProgrammingLanguages overview:
This community is dedicated to the theory, design and implementation of programming languages.
Be nice to each other. Flame wars and rants are not welcomed. Please also put some effort into your post.
This isn't the right place to ask questions such as "What language should I use for X", "what language should I learn", and "what's your favorite language". Such questions should be posted in /c/learn_programming or /c/programming.
This is the right place for posts like the following:
- "Check out this new language I've been working on!"
- "Here's a blog post on how I implemented static type checking into this compiler"
- "I want to write a compiler, where do I start?"
- "How does the Java compiler work? How does it handle forward declarations/imports/targeting multiple platforms/?"
- "How should I test my compiler? How are other compilers and interpreters like gcc, Java, and python tested?"
- "What are the pros/cons of ?"
- "Compare and contrast vs. "
- "Confused about the semantics of this language"
- "Proceedings from PLDI / OOPSLA / ICFP / "
See /r/ProgrammingLanguages for specific examples
Related online communities
- ProgLangDesign.net
- /r/ProgrammingLanguages Discord
- Lamdda the Ultimate
- Language Design Stack Exchange
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
In case you're interested, the language is a derivative of an esolang I made called NaBD. The idea was a Turing tarpit but for functional languages. What's the minimal I could get by with and still feel like a real language? (And no, not just lambda calculus; needed a real implementation)
I realized this sort of stripped-down functional language would make a great basis for a graphical programming language, something I've wanted to make for a while, so I set out to refine and remake it into just that.
That's why the syntax is a little bizarre, bc it mimics the flow of graphical blocks. It also is very simple. Every function has one input and one output with no first class funcs/currying. It's also statically typed.
Here's a truth-machine (doesn't work yet bc I haven't implemented some of the standard functions; it does parse and type check tho at least):
It will also support the C ABI via
extern_c name_of_lib : name_of_function :: Type -> Type.
This is not implemented yet either.