4 ms·
Porth, It's Like Forth but in Python
- Alifatisk 4y agoHe moved the development from Github to Gitlab
- unixhero 4y agoGood move!
- gymbeaux 4y agoWhy’s that? Because Github is scraping repos for Copilot?
- unixhero 4y agoNo, because of Better features
- gymbeaux 4y agoAs far as I know, Github generally keeps up with Gitlab. For a while, I was on Gitlab because private repos were free, but since Microsoft purchased Github, Github has that too. Gitlab's own page about the differences between the two is somewhat biased[1]. Most of the features where "Gitlab wins", are niche and nice-to-haves at best. Mostly "scanning" features, and I'm sure they aren't free. Meanwhile, even Gitlab seems to recognize Gitlab is superior in at least one way (CodeSpaces). [1] https://about.gitlab.com/devops-tools/github-vs-gitlab/ https://about.gitlab.com/devops-tools/github-vs-gitlab/
- omgmajk 4y agoThe youtube series is quite good for this, especially the first few episodes where he uses NASM to compile from Python instead of compiling Porth with Porth.
- DonHopkins 4y agoNot to be confused with Forthon.
- timbit42 4y agoSo a Python interpreter implemented in Forth? That reminds me of some code I came across one time which was a BASIC implemented in Forth. It was less than 100 lines of code, which I thought was impressive.
- lebuffon 4y agoI believe the first version of that interpreter was written by Charles Moore himself. "Lines" in Forth are rather fluid but I have a version here that is 154 lines when formatted as a text file rather than 1K disk blocks.
- 6177c40f 4y agoI read that initially as "Forthtran" and I can't tell if that sounds like a good idea or an awful one
- throwaway17_17 4y agoA compiled, number crunching dialect of Forth with a very good vocabulary (and the accompanying semantics) for n-dimensions matrix calculations sounds pretty neat. I’m surprised no one jumped in with a an APL reference, however there are some significant differences between an array processing language and a concatenative language with Fortran semantics.
- lebuffon 4y agoDr. Julian Noble (RIP) went down that road but realized it was overkill and switched to providing a "formula translator" for Forth. So it takes infix notation and translates it to RPN Forth code than is compiled interactively like normal Forth.
- deleted 4y ago[deleted]
- oh_sigh 4y agoI'd like to know more about "certain individuals trying to disrupt the language design process" alluded to in the readme.
- Alifatisk 4y agoYeah that stuck with me as well.
- cfuendev 4y agoI think it was basically this dude building an LLVM compiler for Porth, which made Porth's creator (Tsoding Daily) uncomfortable because he felt like he was on a race to see who made his own unfinished language better. He says individuals with an "s", so I'm not sure who else he might be talking about, but I remember this LLVM person being the big shocking reason why he initially closed the source code. As far as I remember, the LLVM dude apologized in a public comment on the same video where Tsoding complained about this, claiming he was closing the LLVM repo and explaining it was just a toy project he made to understand LLVM better that got some attention.
- canadianfella 4y ago[dead]
- stjo 4y agoThis is quite stupid in my opinion. I don't see how you "help" the language discouraging others from forking/improving the project.
- gaetgu 4y agoWhile I agree, I can also see where the creator is coming from here. He is working on making his very unfinished language, and someone else comes and starts making an optimized LLVM version of it. The creator certainly doesn't want the language to always look like it does today—after all, he is still actively working on it, adding new features every week. But he is afraid that the LLVM version will be so much better that people will use that instead of his work-in-progress compiler, and so they will be stuck with an old version of his language. I think he should have handled it better. Maybe explaining why he didn't want a fork (he may have done this, I haven't watched his porth series specifically), and maybe asking the guy to put out something in his README.
- deleted 4y ago[deleted]
- ZiiS 4y agoI am missing the python? This seems self hosting,
- throwaway17_17 4y agoIn Tsoding’s streams Porth started out hosted via Python before he eventually wrote Porth in Porth.
- deleted 4y ago[deleted]
- jammycrisp 4y agoThere's also https://github.com/llllllllll/phorth https://github.com/llllllllll/phorth, an implementation of forth that compiles to cpython bytecode
- deleted 4y ago[deleted]
- rabf 4y agohttps://youtube.com/playlist?list=PLpM-Dvs8t0VbMZA7wW9aR3EtBqe2kinu4 https://youtube.com/playlist?list=PLpM-Dvs8t0VbMZA7wW9aR3EtB... Playlist of this being created.
- guessbest 4y agoI like this HN pivot from rust to forth.
- deleted 4y ago[deleted]