Hello, World I'm an independent researcher based i...
# introduce-yourself
s
Hello, World I'm an independent researcher based in Sweden/Czechia/Germany. I've been spending the last six years researching how to make better text editors (both plain text and rich text), GUIs, GUI frameworks, portable assembly, web browsers and visual programming. I don't publish much, because this is a rabbit hole where making a better something depends on making a better something else, and most things are broken most of the time because of working an a dependency, which then depends on another dependency, but sometimes I go out and speak at events. The latest addition to my suite of technologies is an unconventional programming language that unifies all my previous technologies. It's a general purpose language and multimedia authoring language unified, that can be used to describe apps, network services, documents, slideshows, websites, pictures and videos in an amount of code that is close to the theoretical minimum, and from that generates code that has an efficiency close to the theoretical maximum. It uses pointers for efficiency and propositional logic for correctness, including complete memory safety. This language proves that in traditional computing there is no tradeoff between efficiency, robustness and ease of use. The same programming language is going to be used for writing high-performance algorithms as for teaching children programming. Doing research in the future of coding gets lonely. Even among people who work with programming, there are few who understand what I'm doing. I met someone at Jetbrains who showed a good understanding of what I'm doing. He took a look at my visual code editor and recommended me Future of Coding. I've been delaying posting anything here for a year, as I've been feeling overwhelmed with things to do even before starting to involve other people, but now I feel the time is right. I'm writing here in hope to connect with interesting people. Feel free to ask me anything about my research or even get to know me on a personal level. I have have a lot to tell.
šŸ‘‹ 15
šŸ‘ 1
ā¤ļø 1
šŸ”„ 1
f
Very interesting -- which language is that? and is there a short video where you show some of the things you've been working on?
s
No short videos yet, although there are some long talks showing last year's progress that I would be embarrased to show as a first impression today. Maybe I can start making short videos for #C0120A3L30R. The programming language is my newest thing, so it's not described anywhere in public. I call it Pointerscript for now. Pointer as in machine-oriented and efficient. Script as in domain-oriented and easy to use.
šŸ‘ 2
d
that's super interesting to me as I'm taking the opposite approach or trying to have the programmer/user describe as little as possible/needed then generating code/questions
what's your motivating languages? I've been happily motivated by futhark, scribble, and darklang
s
@Don Abrams My main motivation is Rust. Before learning Rust, I've grown out of a number of languages as I've seen their flaws that can't be unseen. When learning Rust, I was amazed at how well-designed the language is, and I couldn't even imagine a better language, but I knew the time would come when someone could. Now even my Rust code is death by a thousand paper cuts. This happens in two ways. Rust likes to sprinkle runtime checks and panics everywhere. It gives me the three options to accept that the program can panic at runtime, check my work in Compiler Explorer and try workarounds in the hope that some of the checks will go away, or write unsafe code that is completely unchecked, neither of which is satisfying. Just as Rust has done with other things, I want one option to beat them all. Most things I do are very easy to prove correct, if only the language allowed me to write proofs, so I consider that a high-priority feature. My Rust code tends to be overwhelmingly verbose in a way that makes me want to automatically generate it. For this, Rust has four competing options that are disappointing in four differente ways. There's generic code, declarative macros, procedural macros and build scripts. I often make new code generators for various purposes and choose a different approach every time, and my generator code often ends up being longer than the code it generates. Here too, I want one option to beat them all. I think Zig does it the right way. My motivating languages are: • Rust — For not compromising efficiency, safety and productivity • Lean — For propositional proofs and first class types • Smalltalk — For the visual code browser • Typst — For authoring documents with a real programming language and instant previews • Austral — For linear types and capabilities I've also had a brief look at Zig and Scribble, but only after already researching the corresponding features that I originally got from Lean and Typst. Capabilities I got from elsewhere before I saw them in Austral.
ā¤ļø 1
@Don Abrams How do you mean the opposite approach? I try to have the programmer describe close to the theoretical minimum. It's basically Rust, but the programmer describes as little as in Typst.
s
Hey @Squirrel I wonder how you deal with the feeling of being overwhelmed. What strategies do you use because even I feel overwhelmed at times, like when I am trying to catch up on a domain and it feels never-ending and when I am working with folks with a ton of experience.
s
@SUJAY Newsletters That's my dark side. I deal with being overwhelmed by trying to have fewer things on my mind so I can focus on what I'm doing, such as by being in contact with fewer people who might disturb my priorities. It's not nice, but as long as it helps me focus, I'm happy. I hope that one day my masterpiece will be ready, and I will be in regular contact with all people I know.
šŸ‘ 1