5 ms·
Be careful. Factor is a gateway to lower level stack based languages. I saw Zed Shaw do a presentation using factor and decided to spend a weekend playing with
by bjoli 4y ago
Be careful. Factor is a gateway to lower level stack based languages.
I saw Zed Shaw do a presentation using factor and decided to spend a weekend playing with it. It was the start of a two year journey that ended with me writing forth for microcontrollers. That was time I should have studied but was somehow always sidelined by other things.
- butterisgood 4y agoI too have been "nerd sniped" by factor before... it's quite cool.
- mncharity 4y agoImagine being able to say "I feel concatenative this afternoon" and easily find active interesting efforts to contribute to for a few hours, solo or pair or team. Dreams for the newborn github included support for let's-meetup-and-hack realtime dynamic community formation, but I've not yet seen the like. I enjoyed Factor. Fixed stack-effect seemed a nice trade of flexibility for less oops. I'd love to see someone start concatenative, but with a replace-the-world focus. So move quickly up-scale to single and multiple dispatch PICs, tabled WAM, clone V8 internals, link Z3, etc, etc. "If you're not able to implement other languages in bulk, and better than they are, you're still wedged". Sort of a LispMachine for an age where a much broader-than-cons foundation is possible/appropriate.
- adastra22 4y agoOh the flip side, if you told that story in an interview I'd hire you on the spot.
- bjoli 4y agoCurrently you probably wouldn't. I am a classical musician. CS or EE is however my backup if I get injured or for some reason lose my job.
- adastra22 4y agoI wouldn't hire you for a leadership role then, but it wouldn't stop me from hiring you. It is damn hard to find someone capable to delve deep into technology like that without hand-holding, and walk away with a working command of such obscure knowledge. People like that can be taught and trained to work on whatever project I am working on. So with a gap working as a classical musician it might mean starting effectively as a (paid) intern, but it would still get your foot in the door. I don't claim to be representative of all, or even most hiring managers though.
- crest 4y agoHave you found #forth-hardware-projects and #mecrisp?
- fmakunbound 4y agoThere’s also a pretty active Forth channel on Discord
- bjoli 4y agoThis is almost 15 years ago, and I didn't have a reliable internet connection, so sadly no. There was two of us in a small computer group in Germany trying to figure things out, mostly.
- jasone 4y agoHah, you could have done worse. The double-dose introduction to stack-based programming via HP calculators and Adobe PostScript in the 90s led me to spend on the order of 3000 hours developing Onyx (https://github.com/canonware/onyx https://github.com/canonware/onyx), which started off as a PostScript clone minus graphics, and ended up a thing of its own. On the bright side, I learned a tremendous amount about lexing, interpreters, exceptions, tail-call optimization, data structures, garbage collection, etc., which opened up lots of possibilities in later projects. With the benefit of hard experience I would never recommend using a stack-based language for a large project, but as a learning tool it has some nice qualities.
- bjoli 4y agoFun stuff! I find that the more I find out about PL research and what I myself like in programming, the more I feel constrained in many languages. I find that most of the bugs I write (which are many) are errors in dealing with mutable state. There is always one stupid little detail that leads to bad state. This has led me to dislike the programming language I write the most (probably python, despite really only wanting to write scheme) because it is mutation first. I was also sad to discover that I couldn't write self-recursive procedures in rust because they are never guaranteed to be actually recursive. Did you get anything like that from your work with onyx? (And yes, I believe I have actually has a look at onyx about 10 years ago, back when trying to write poatscript).
- junon 4y agoThis is how you get hired at weird (good way) places you never forget, though.
- bmitc 4y agoDo you have any links to things you have done or any interesting resources for Forth on microcontrollers?
- belfalas 4y ago> I saw Zed Shaw do a presentation using factor and decided to spend a weekend playing with it. I saw the same presentation back then and also spent a weekend with factor. It was a really valuable experience. The language was so different from anything I had previously used that I had to learn a new way of thinking. That was a great thing to go through. Slava Pestov (the creator of factor) did a presentation on the language at Google back in the 2000s. A highlight from the talk was him explaining that there was a function 'boa' that you could call to construct an object 'by order of arguments'. He called it "a boa constructor." :)