mark4 changed the topic of #forth to: Forth Programming | do drop >in | logged by clog at http://bit.ly/91toWN backup at http://forthworks.com/forth/irc-logs/ | If you have two (or more) stacks and speak RPN then you're welcome here! | https://github.com/mark4th
travisb is now known as tabemann
travisb is now known as tabemann
travisb is now known as tabemann
* tabemann scrolls up and sees the therapy session
* tabemann scrolls up and sees the therapy session
* tabemann scrolls up and sees the therapy session
<tabemann> my question is why would I use wayland just because someone considers it "modern"
<tabemann> my question is why would I use wayland just because someone considers it "modern"
<tabemann> my question is why would I use wayland just because someone considers it "modern"
<tabemann> "modern" can go to hell
<tabemann> "modern" can go to hell
<tabemann> "modern" can go to hell
* tabemann is happy working on a machine that is less powerful, aside from sheer MHz, than a SPARCstation circa 1990
* tabemann is happy working on a machine that is less powerful, aside from sheer MHz, than a SPARCstation circa 1990
* tabemann is happy working on a machine that is less powerful, aside from sheer MHz, than a SPARCstation circa 1990
<tabemann> well, it's almost certainly got more peripherals than it, but far less RAM and fixed storage
<tabemann> well, it's almost certainly got more peripherals than it, but far less RAM and fixed storage
<tabemann> well, it's almost certainly got more peripherals than it, but far less RAM and fixed storage
<mark4> wayland spent too much time as vaporware
<mark4> wayland spent too much time as vaporware
<mark4> wayland spent too much time as vaporware
<tabemann> you can't even take a screenshot in it!
<tabemann> you can't even take a screenshot in it!
<tabemann> you can't even take a screenshot in it!
<tabemann> because the designers couldn't decide what security model to use that would allow one to take a screenshot
<tabemann> because the designers couldn't decide what security model to use that would allow one to take a screenshot
<tabemann> because the designers couldn't decide what security model to use that would allow one to take a screenshot
<mark4> lol
<mark4> lol
<mark4> lol
<tabemann> but yeah, if you want "modern" you should be using a Mac, because the non-macOS Unix-like world, outside of a certain Red Hat developer who shall not be named, generally values tradition unless something truly outweighs it over new for new's sake
<tabemann> but yeah, if you want "modern" you should be using a Mac, because the non-macOS Unix-like world, outside of a certain Red Hat developer who shall not be named, generally values tradition unless something truly outweighs it over new for new's sake
<tabemann> but yeah, if you want "modern" you should be using a Mac, because the non-macOS Unix-like world, outside of a certain Red Hat developer who shall not be named, generally values tradition unless something truly outweighs it over new for new's sake
<tabemann> especially the BSD world
<tabemann> especially the BSD world
<tabemann> especially the BSD world
<mark4> X is old, tired, clunky, hacked on and patched with ducttape
<mark4> X is old, tired, clunky, hacked on and patched with ducttape
<mark4> X is old, tired, clunky, hacked on and patched with ducttape
<mark4> and works
<mark4> and works
<mark4> and works
<tabemann> to them the Linux people are running roughshod over everything good and holy in the world
<tabemann> to them the Linux people are running roughshod over everything good and holy in the world
<tabemann> to them the Linux people are running roughshod over everything good and holy in the world
<mark4> isnt a screenshot simply a case of reading memory at a0000000 or something?
<mark4> isnt a screenshot simply a case of reading memory at a0000000 or something?
<mark4> isnt a screenshot simply a case of reading memory at a0000000 or something?
<tabemann> the wayland people want to make sure that only properly authorized applications can see your screen
<tabemann> the wayland people want to make sure that only properly authorized applications can see your screen
<tabemann> the wayland people want to make sure that only properly authorized applications can see your screen
<tabemann> but they haven't figured out how to make that happen
<tabemann> but they haven't figured out how to make that happen
<tabemann> but they haven't figured out how to make that happen
<tabemann> so they've settled with no applications seeing your screen
<tabemann> so they've settled with no applications seeing your screen
<tabemann> so they've settled with no applications seeing your screen
<tabemann> and other stuff
<tabemann> and other stuff
<tabemann> and other stuff
<tabemann> like how every "compositor" (what they call a window manager IIRC) has to reimplement a bunch of crap
<tabemann> like how every "compositor" (what they call a window manager IIRC) has to reimplement a bunch of crap
<tabemann> like how every "compositor" (what they call a window manager IIRC) has to reimplement a bunch of crap
<tabemann> whereas any old process can be a window manager under X without having to bother with any compositing crap
<tabemann> whereas any old process can be a window manager under X without having to bother with any compositing crap
<tabemann> whereas any old process can be a window manager under X without having to bother with any compositing crap
<tabemann> like every window manager has to be Compiz
<tabemann> like every window manager has to be Compiz
<tabemann> like every window manager has to be Compiz
<tabemann> wayland is what you get when you decide to replace everything and do everything Right from scratch... but realize that's never going to work, so you create Xwayland to deal with the fact that there are a ton of applications whose developers are not going to rewrite their applications just so they can go along with your scheme
<tabemann> wayland is what you get when you decide to replace everything and do everything Right from scratch... but realize that's never going to work, so you create Xwayland to deal with the fact that there are a ton of applications whose developers are not going to rewrite their applications just so they can go along with your scheme
<tabemann> wayland is what you get when you decide to replace everything and do everything Right from scratch... but realize that's never going to work, so you create Xwayland to deal with the fact that there are a ton of applications whose developers are not going to rewrite their applications just so they can go along with your scheme
lispmacs has quit [Remote host closed the connection]
lispmacs has quit [Remote host closed the connection]
lispmacs has quit [Remote host closed the connection]
jyf has quit [Ping timeout: 264 seconds]
jyf has quit [Ping timeout: 264 seconds]
jyf has quit [Ping timeout: 264 seconds]
jyf has joined #forth
jyf has joined #forth
jyf has joined #forth
boru` has joined #forth
boru` has joined #forth
boru` has joined #forth
boru has quit [Disconnected by services]
boru has quit [Disconnected by services]
boru has quit [Disconnected by services]
boru` is now known as boru
boru` is now known as boru
boru` is now known as boru
dave0 has quit [Quit: dave's not here]
dave0 has quit [Quit: dave's not here]
dave0 has quit [Quit: dave's not here]
* crc can't use wayland at all, so happily ignores it
* crc can't use wayland at all, so happily ignores it
* crc can't use wayland at all, so happily ignores it
_whitelogger_ has quit [Remote host closed the connection]
_whitelogger__ has quit [Remote host closed the connection]
sts-q has quit [Ping timeout: 246 seconds]
sts-q has joined #forth
<siraben> I've switched to wayland (sway) a few months ago and it's been a massive improvement for me
<siraben> No screen tearing and external displays with different DPIs work without fiddling around with scaling
<siraben> I guess the only downside is that I haven't figured out screen sharing for wayland applications, but I dual boot my laptop so I just go into macOS for that
fiddlerwoaroof_ is now known as fiddlerwoaroof
gravicappa has joined #forth
astrid has quit [Ping timeout: 264 seconds]
<remexre> ugh I'm slowly coming around to the idea of writing a custom debugger on top of unicorn+capstone+angr, that does snapshotting and symbolic execution...
hosewiejacke has joined #forth
astrid has joined #forth
hosewiejacke has quit [Ping timeout: 246 seconds]
xek has joined #forth
<nihilazo> does the forth standard have an equivalent of . that doesn't print a trailing space? (or does gforth?)
<nihilazo> OK so this was a bit of an xy-question because what I want to do is actually print ANSI escape codes and gforth already has the ones I need so don't worry about tihs
nitrix has quit [Quit: Genius is one percent inspiration and ninety-nine percent perspiration]
nitrix has joined #forth
hosewiejacke has joined #forth
<sts-q> mark4: The ./extend script failed to write the newly build ./x64.
<sts-q> mark4: Regards, bbiab
<sts-q> ʕ·͡ᴥ·ʔ
hosewiejacke has quit [Ping timeout: 265 seconds]
hosewiejacke has joined #forth
dave0 has joined #forth
tech_exorcist has joined #forth
hosewiejacke has quit [Ping timeout: 265 seconds]
<siraben> remexre: what for?
Zarutian_HTC has quit [Remote host closed the connection]
andrei-n has joined #forth
<veltas> nihilazo: "suckless software is just user-hostile for the sake of persuing a nonsense ideology of what simplicity is" I like their ideas and have deployed them successfully, although their browser is bad
<veltas> The issue is the web really, you can't make that problem simpler without changing the requirements, and therefore not making a *web* browser
<veltas> Also that is a strong accusation that they're "nazis", do you actually have any proof?
<veltas> They're definitely elitists and purists, you need to take any community like that with a pinch of salt, forth community included
<veltas> nihilazo: The word you're looking for is .R, if you give 0 as field width it will print the whole number without any padding
<veltas> The recompile-to-run idea is a cool idea, it's the same as how many Forth programs are configured. A lot of people spend time writing parsing or adding in a scripting language to let people configure flexibly, but they just use C itself. It just changes the way you need to deploy the program.
<veltas> I think it's a legit approach to factoring a problem
lispmacs has joined #forth
<nihilazo> veltas: re nazis: https://tilde.team/~ben/suckmore
<nihilazo> last night I was in a bad place and just saying nonsense lol. I find suckless software difficult to use and have had bad experience with it in the past, but for specifically being what it is, superminimalist software targeting X intended to be used exclusively by people with knowledge of C, it's fine. It's just that I find what it is to be something useless personally
<nihilazo> (also, I apologise, but I will probably be asking lots of dumb forth questions here, I've started my first "real" forth project)
<mark4> sts-q: ok thats an enigma lol
<mark4> i went zzzzz real early last night lol sorry was not here
<mark4> do not appologise for ignorance. ignorance is not knowing somethng, stupidity is not seeking answers. thers a difference
<mark4> sts-q: do you have write permissions in that directory?
<mark4> can you touch foo and see a foo file?
hosewiejacke has joined #forth
<veltas> nihilazo: Glad to hear that you're going to do more forth, go ahead and ask dumb questions, we want more forthers
<inode> but wandering around holding torches at night, and one user having wolf's lair as their hostname is barely evidence that suckless is a group of "national socialists"
<mark4> if linus t was a national socialist that would not stop me using his sofware
<mark4> i suspect he is not :)
<nihilazo> I mean, that's fair enough tbh
<mark4> point being, someones belief system does not make him a bad coder :)
<nihilazo> unless their belief system is that electron works :P
<veltas> It's good I called it out, now people who care can go fact-check themselves. I do agree the assertion breaks down quite a lot with any actual research, I am unsurprised suckless community draw this ire.
<veltas> I don't even like suckless, they banned me from their IRC channel for no good reason for like a year. I wish they were a bit less toxic. But I was a bit shocked by what nihilazo claimed nonetheless.
<veltas> I like their ideas but not their community, I mean
<siraben> meh, I'd judge the quality of a technical work (whether it's a program or a math paper) on its own merit and not the political stance of its author
<siraben> e.g. Gerhard Gentzen was a member of the Nazi party, doesn't make his contributions to natural deduction any less
<siraben> important
<cmtptr> political stance can have software ramifications though if it compells them to spy on and otherwise undermine you
<veltas> It's all contextual, changes depending on how vital the tool is, and how immoral the person in question is. If I was dying from TB I would accept treatment that fell out of research done by Nazis.
<boru> I agree with siraben. I don't understand why people cannot divorce someone's politics from their work. There seems to be a strong desire to inject politics into engineering over the last decade or so rather than it just being about, you know, engineering.
<siraben> sounds like an argument against proprietary software written by monopolies, surveillance capitalism incentivizes undermining of user's rights.
<nihilazo> I think it's difficult to seperate politics from people's work, sometimes people's work isn't affected by their politics and sometimes it is
<nihilazo> like, surveilence capitalism certainly influences proprietary software greatly
<veltas> But do I want to use a project that's run by someone I really dislike when there are valid alternatives or it's not crucial, when my usage ultimately means if I want to develop it further in open source I'll have to interact and associate with them or indirectly give them attention?
<veltas> Boycots are a thing too, and sometimes they work
<siraben> boru: but at the same time, tech is not really apolitical and somehow free from political ramifications
<nihilazo> I don't think the political ideology of suckless affects their software, but I still avoid their software due to it (and other factors above mentioned), because I have alternatives I can use and I don't want to support their toxicity
<veltas> There's no simple rule, but I do prefer to try and ignore political stuff especially when it's vague accusations of general political heresy with no clear evidence
gravicappa has quit [Ping timeout: 256 seconds]
hosewiejacke has quit [Ping timeout: 245 seconds]
<cmtptr> confirmed veltas is a nazi
<veltas> If you don't use suckless because you don't like them that's up to you, and I understand. I don't like them either but I use some of their stuff and promote their ideas, that's also valid.
<siraben> i had no idea suckless was associated with nazism, but that doesn't affect my judgement of their software
<nihilazo> that's fair
<nihilazo> everybody is free to their decision in that regard
<cmtptr> siraben, they aren't
<veltas> siraben: Vaguelly associated without any real evidence
<siraben> then it matters even less!
<cmtptr> "without any real evidence" means "they aren't"
<nihilazo> I think the lobsters posts linked on that site are pretty good evidence but meh
<siraben> but for me it's not really practical to use suckless software because I don't have time to configure it to usability
<nihilazo> if it doesn't matter to you then whatever
<veltas> I've looked through what nihilazo showed and it's just they did a torch-lit hike, and a lot of people talking about that.
<veltas> Also their web server has a german name, I don't know if it's offensive, I have no idea.
<veltas> Sorry, mail server
<veltas> If you want people to dislike the suckless community just send them to #suckless :P
<mark4> i do agree that a lot of software out there DOES suck even though it works beautifully
<nihilazo> question: does developing a simple game in forth count as a first real project or is that not a real project lol
<nihilazo> not solving a real problem, just having fun
<veltas> I think doing any kind of significant programming is a real project
<siraben> sounds like it, depending on the complexity of the game
<patrickg> hello world is a real project, if you add enough bells & whistles
<siraben> pong would be interesting
<cmtptr> and i think nothing in software counts as a real project!
<veltas> In Forth, doing even 'simple scripting' is a real project, and a valuable learning experience
<patrickg> cmtptr: all imaginary?
<cmtptr> can you touch a software??
<patrickg> once you can touch it, is it firmware?
* boru prepares a whalloping with a copy of The Tao of Programming.
<cmtptr> it is touchware
<nihilazo> we need something inbetween software and firmware
<nihilazo> for like, device drivers, and low level OS stuff
<nihilazo> I propose "squishyware", for it is halfway between hard and soft
<boru> Software sublimes.
<nihilazo> or "silkenware" because silken tofu is softer than firm tofu but not completely soft
<cmtptr> i would still group firmwire under the software umbrella
<siraben> a nice case study is Temple OS, I guess.
<siraben> people can judge the OS and its impressiveness separately from the author
<nihilazo> temple OS is actually super interesting
<boru> Indeed. Actualy firmware, that is ROM code or RTL bitstreams are still something I would put in the set of software.
<veltas> siraben: I know why you're saying that siraben but it's not a good example, Terry Davis was mentally ill and that coloured a lot of what he said.
gravicappa has joined #forth
<siraben> yeah
<patrickg> veltas: the mail server name mirrors the name of Hitler's military HQ (and there's little chance of inventing it independently). I suppose it's usually out of carelessness (or because using "bad" terms feels edgy) not because folks are full blown nazi sympathizers.
<veltas> That's an edgy joke and not surprising from old-school elitist hackers, and if they re-made the mail server today they would probably not call it that.
<siraben> ugh
<cmtptr> i love this public image of the kkk and nazis that they're all snickering behind your back and exchanging secret handshakes and decoder rings
<boru> I posit there's no much you could call a server that wouldn't offend _someone_ these days...
<siraben> related article I read today that blew up on the orange website: https://mooseyanon.medium.com/github-f-ck-your-name-change-de599033bbbe
<siraben> but this is getting OT :P
<veltas> Yeah I'm waiting for someone to notice I have a new project on github that has a 'master' branch
<veltas> Thanks for making me do that Microsoft, I really wanted to make my tech muscle memory political
<boru> You use _git_hub! Git is perjorative term!
<siraben> the only time i've renamed master was when implementing a specific git workflow
<siraben> e.g. develop or staging
<cmtptr> i feel like i remember seeing a call once to stop using the master/slave terminology on the ide bus because it was offensive
<nihilazo> the github master/main thing is dumb tbh, it's obviously been done for performative reasons without talking to anybody actually affected by it
<nihilazo> but to me I don't care, either is fine, I kinda find main to be a clearer name personally but meh
<nihilazo> either way it's not great but I don't see it mattering enough to get at all worked up about either a change or a lack of a change
Zarutian_HTC has joined #forth
<patrickg> veltas: given cultural sensitivities in Germany (where I understand that admin is from) around the 3rd Reich, less a sign of "old-school elite hacker" rather than "juvenile build-your-first-server kiddo" (at best, in the 90's) to insensitive (anytime after that)
<cmtptr> wait, so github actually did change master to main??
<veltas> patrickg: Yes from being around a lot of edgy german kids, I do agree
<patrickg> veltas: but then, juvenile fits some of the suckless activities pretty well in my book (including their project name)
<Zarutian_HTC> cmtpr: yeah, pointless.
<cmtptr> holy cow
<patrickg> git changes the default name, so github better follows or they see lots of customer support requests ;-)
<cmtptr> good thing i always create my repos locally and then push to an empty repo to publish it
<mark4> yea lol
<mark4> but the branch names are all just a convention anyway
<mark4> i can call the initial top level branch the FOO branch :)
<cmtptr> of course
* Zarutian_HTC has seen a new repo where the master branch was named optimus
<cmtptr> at my workplace we don't have a main branch, only release branches, except they didn't delete the default master branch nor configure bitbucket to default to the latest release branch, so every time you browse to a repo you always land on an empty master branch by default. it's really annoying
<nihilazo> actually tbh, there was an overall good that came from this
<nihilazo> which is that git added an option to change the default branch name on your machine
<nihilazo> which was previously hardcoded as master
<nihilazo> so while the master/main change is at best a bit dumb (and at worst breaking some documentation), it did lead to git getting more flexible, so that's good
<nihilazo> which makes life eaiser if you are making new repos within an organisation that has internal naming conventions
<mark4> cmtptr: you use atlassian tools there ?
<cmtptr> yeah
<mark4> i like their code review process better than githubs code review process
<cmtptr> i've never done it on github, but a major complaint i have is that there's no button to download the PR as a collection of patches
<boru> I've got a lot of stuff hosted on gitlab, but considering migrating to sourcehut.
<mark4> hate the way github pukes out ALL the chanves into one view instead of showing a list of files that were changed and only shoing the diffs of the one file you clicked on
<nihilazo> I have lots of stuff on tildegit, which is just a gitea instance
<cmtptr> so if i want to test the PR for myself, and the source repo hasn't been made public, then i'm forced to talk to someone and that's intolerable
<nihilazo> gitea is meh but tildegit is run by a friend and I prefer using little services run by people I know rather than big services run by faceless companies
<boru> Why not just run the instance yourself, then?
<boru> Gitlab, for example, could not be simpler to install/set up.
<nihilazo> forth question: is using the case..of...endof..endcase structure discoraged? Should all cases be inside the same word or can I have an case structure and then define words that contain "of ... endof"s?
<boru> Sourcehut is also pretty straightforward.
<nihilazo> boru: using my friend's stuff is free :P
<nihilazo> also, I am a terrible sysadmin
<boru> So is gitlab and sourcehut.
<nihilazo> not if you run the instance yourself
<siraben> ugh, ddevault
<nihilazo> you're either paying for a VPS or running a server in your house
<nihilazo> and I can't run a server in my place because my parents would get mad
<boru> I see.
<veltas> nihilazo: No, using case..of..endof..endcase is not 'discouraged' as far as I know. But sometimes there are neater ways, depends on situation.
<nihilazo> OK
<nihilazo> I'm getting a key with the `key` word and calling different things based on what key it is
<nihilazo> which seems like a pretty natural case for case, to me
<veltas> Really depends
<veltas> But I personally won't be offended if you use CASE
<mark4> not a big fan of case statements even in X4 where it compiles a list of option/vector pairs as an array
<mark4> i REALLY hate the c switch statement
<mark4> i dont have an ENDOF you so can not do OF 39999 lines of code ENDOF
<nihilazo> what is the preferred way to store a string of arbitrary length in a variable or memory in forth? or is that not a thing that is done
<nihilazo> as part of this game I want to be able to set a message that will be displayed
<nihilazo> or maybe I can just write it to the terminal and just have my screen drawing routine not overwrite it
<cmtptr> create msg 80 allot variable mlen
<cmtptr> maybe variable #msg
<nihilazo> and then how do I store a string into that? Do I have to c! each character or is there a word for storing a string to that and print a string stored in a place?
<nihilazo> I've only used ." before which is for literal strings
<cmtptr> uhhh idr... in mine i had a word called "!+ for copying strings, but i deviated quite a bit from "standard" forths
<nihilazo> I'm building this for gforth so if there's a gforth-y thing that's fine too, I'd just prefer it to be able to run on other forth implementations without much modification (in theory at least)
<cmtptr> is "place" a word?
<nihilazo> seems like it
<veltas> "what is the preferred way to store a string of arbitrary length in a variable or memory in forth" There isn't a preferred way, I do : name S" mystring" ; or create name '"' parse mystring" str,
<veltas> A good rule of thumb is to use something that makes the code shorter or simpler
<nihilazo> ok
<nihilazo> this code is going to end up kinda a mess but I'm rolling with it
<veltas> I don't know about everyone else, but when I write Forth I end up refactoring a LOT.
<veltas> Go for it and then share the results and I'm sure people can give useful advice
<nihilazo> alright
<veltas> boru: I use gitlab at work and I prefer github
Zarutian_HTC has quit [Read error: Connection reset by peer]
Zarutian_HTC has joined #forth
gravicappa has quit [Ping timeout: 245 seconds]
gravicappa has joined #forth
<proteusguy> veltas, if you're not refactoring a lot then you aren't a forthwright! Absolutely this is the way.
Zarutian_HTC has quit [Ping timeout: 256 seconds]
Zarutian_HTC has joined #forth
<siraben> proteusguy: yeah, the only way I got https://github.com/siraben/zkeme80/blob/master/src/bootstrap-flash1.fs to the state it is is because of aggressive refactoring!
spoofer has joined #forth
dave0 has quit [Quit: dave's not here]
andrei-n has quit [Ping timeout: 246 seconds]
<nihilazo> is there a standard or gforth word to shift a fixed point number onto the float stack?
<nihilazo> I can't see it but I might be being dumb
<nihilazo> I can only see d>f which takes a double, do I need to do s>d d>f?
<remexre> siraben: I was (just finished) hand-SIMDing in assembly some algo I wasn't terribly familiar with, and managed to waste the whole weekend not realizing I had to transpose some matrix because (arm's) TBL doesn't work like (amd64's) PSHUFB
<veltas> nihilazo: My gforth has S>F
<nihilazo> huh, so it does
<nihilazo> how did I not notice
<nihilazo> only d>f was listed on the documentation page I was looking at, weird
<veltas> The moral of the story is to sit at the interpreter
<nihilazo> true
<veltas> SwiftForth has S>F too
<veltas> After requiring fpmath
* Zarutian_HTC notes that fpu is called, colluqually, slumpreikniverk in Icelandic
* Zarutian_HTC adds: which means lazy-aprox calculating unit
<veltas> Google Translate told me "random calculator", is that an accurate literal translation?
<Zarutian_HTC> nope
<Zarutian_HTC> it basically means "about that much, aproximately because I am lazy"
<veltas> Is it like a diminutive of approximate?
<nihilazo> that is the best term for an FPU lol
<Zarutian_HTC> veltas: nope, slump is the kind of sound a handfull of milled wheat being put on a scale and neather the seller or buyer care about the exact weight. Then it got expanded in use.
<nihilazo> as soon as I decided to use floating point I started getting rounding errors, but for what I'm doing it doesn't matter (just displaying a number to the user that is internally fixed point, without having to do complicated fixed point math
<veltas> Zarutian_HTC: Ah interesting, thanks
<veltas> I like language, even though I'm illiterate
* nihilazo wants to study linguistics but feels he's too dumb to get into uni
<Zarutian_HTC> nihilazo: you could start with looking at lojban and the reasons behind it
<nihilazo> I'm not a fan of lojban tbh, but it's interesting
<nihilazo> I'm mainly not a fan because I'm a toki pona speaker and lojban is toki ike, lol
<Zarutian_HTC> veltas: I do not think you mean that you can not read, yes?
<nihilazo> idk if lojban speakers know this but it's a joke among toki pona speakers that toki pona speakers are in a philosophical gang war with lojban speakers
<nihilazo> the maximally precise language vs the maximally ambiguous one
<Zarutian_HTC> nihilazo: then I recommend looking into reading Beowolf and perhaps the Icelandic sagas
<nihilazo> toki pona reminds me of forth in a dumb way
<nihilazo> like, forth is a programming language that has a minimal basic set of words and grammar with the intention of the user to make more complex constructs using them, toki pona is similar but for spoken language
<nihilazo> I should read Beowulf probably
<Zarutian_HTC> one interesting issue I saw pointed out lately that there is in Icelandic law a spefic subsection on libel in poem or verse form, called níðvísur
<Zarutian_HTC> why? because they are so effective
<nihilazo> woo, I think I got gforth to build on my tablet :D
<nihilazo> I think
<nihilazo> autotools is such useless nonsense
<remexre> nihilazo: considered joining the cult of nix? :P
<remexre> which tablet though? I'm considering writing a Forth for the ESP32, so I can use it with https://www.crowdsupply.com/e-radionica/inkplate-6
<sts-q> mark4: I tried again, same result. Yes, i have write permission, yes, this is 64bit Linux. nasm 2.13.02, maybe a bit old.
<sts-q> mark4: I don't know, if you are using libc-calls from assembly. My system may be a bit outdated.
<sts-q> mark4: Regards
<nihilazo> remexre: pinetab
<nihilazo> remexre: nix is fun I guess but I couldn't get into it
<nihilazo> OK it's not wanting to build now
<nihilazo> wat
<nihilazo> I just want to work on my crappy game on the go
<nihilazo> :(
<veltas> Aren't laptops for "the go"?
<nihilazo> I'm not a fan of laptops
<nihilazo> I prefer using a tablet+keyboard combo
<nihilazo> it's more flexible
<veltas> I hate tablet and phone interfaces
f-a has joined #forth
<inode> nihilazo: i've crosscompiled it as a statically linked binary, works well enough on phones and tablets
<veltas> The best they ever got was in the PDA era with styluses, but alas it was not meant to be
<nihilazo> veltas: pinetab runs desktop linux!
<nihilazo> install whatever UI you want
<nihilazo> it's great
<inode> as long as you have gforth.fi lurking and GFORTHPATH set, it's fine
<veltas> nihilazo: If I always use a keyboard and mouse then what is the tablet for?
<nihilazo> I use touchscreen + mouse rather than keyboard and mouse
<nihilazo> and the tablet can be used handheld too which is clunky with a laptop
<nihilazo> and I can have a split keyboard also
<veltas> I hold my laptop in one hand
<nihilazo> I just like tablets, don't kinkshame :P
<veltas> Loius Rossman did a good video on this subject
<nihilazo> even if it makes no sense that I use a tablet, I like it more
<nihilazo> although I do think I have reasons
<veltas> Did you grow up with tablets?
<nihilazo> nope
<nihilazo> mostly it's the keyboard thing
<nihilazo> I can carry a really nice mechanical ergonomic keyboard with me
<nihilazo> whereas laptop keyboards kinda suck mostly
<veltas> Oh wow you're into the mechanical keyboard meme too
<nihilazo> it's not a meme really
<veltas> I think I actually type faster on a crappy old membrane than a mechanical keyboard
<nihilazo> well, mechanical is kinda a meme, but they do feel nicer
<nihilazo> split is not a meme and ortho is not a meme
<nihilazo> and all split ortho are mechanical
<nihilazo> I get less wrist pain and it's far more comfortable, especially compared to laptop typing. laptop typing is hells cramped
<veltas> Maybe I don't know what I'm missing
<nihilazo> after you adapt you can never go back
<veltas> I'm not convinced :P
<nihilazo> well, enjoy your hand cramp :P
<veltas> I'm currently using a ThinkPad T40, keyboard feels nice to use, thinknipple is fine
<nihilazo> thinkpads are the least worst laptops
<veltas> Apparently I have hand cramp, news to me
<nihilazo> I mean if you don't think you'd benefit, no point switching
<veltas> I think the new XPSs are better than the new thinkpads
<nihilazo> but I got wrist pain from typing so I switched to split
<veltas> There are lots of reasons to not switch like money
<nihilazo> yes
<nihilazo> money is the biggest problem
<veltas> I think all modern laptop keyboards are worthless to be fair, so tablet + any keyboard that isn't flat might be a good combo for me when all the old thinkpads are broken
<veltas> Screen will be too small though, by then my eyesight will be even worse than it is now. Maybe they'll be doing more weird retro laptops and stuff aimed at the elderly by then
<veltas> I want to get rid of my smartphone and get something for old people, they have flip-up phones with buttons and nice big text, lucky b's
<nihilazo> I have no smartphone
<nihilazo> I use an old nokia thing
<veltas> I only ever got a smartphone because a friend kept pressing me to get one and shaming me, so I did, and then upgraded it when I met my fiance at her insistance. I have told her when my contract ends I'm going to get something that makes and receives calls and not something that listens to me all day so it can figure out how to distract me and sell me stuff
<veltas> Everything named "smart"-something is sarcastically named
<nihilazo> yeah
<nihilazo> smart TV
<nihilazo> smart fridge
<nihilazo> smart doorbell
<nihilazo> same with IoT
<veltas> They'd be a bit smarter if they actually ran Forth, but even in embedded it's not used much
<nihilazo> is forth actually used in anything? lol
<nihilazo> like, aside from hobby projects, where it's awesome
<crc> nihilazo: yes
<veltas> I don't know how much it's used but it is indeed used in real applications, forth.com has some examples
<crc> nihilazo: I host a few websites on a server written in Forth, and develop in-house applications for my employer using forth
* crc uses forth for most of his coding, including the editor i write most of my code in
<nihilazo> I'm just writing this game but I'm enjoying using forth
<nihilazo> even though now I want to add a thing and don't know how
<veltas> Unfortunately I don't use Forth at work, although I have applied some of Forth's design to my code at work.
<veltas> I have definitely become a better programmer by learning Forth and applying it in free time
<veltas> nihilazo: What thing do you want to add?
<nihilazo> woo, gforth now builds, runs, and packages
<nihilazo> on the pine64 pinetab
<inode> there're also a few PLCs that will allow you to write forth (or at least something forth-like) instead of the ladder logic and the other IEC-friendly languages
<nihilazo> veltas: well, currently I'm redrawing the screen every tick, I want to only redraw the screen if a value actually changes. The problem is I don't want to duplicate all my variables to test if they've changed
<nihilazo> it's not a forth specific problem, just a problem of how best to do a thing
<nihilazo> a design problem
<nihilazo> ig
<veltas> The forth approach is to have a word you use to mark the current state as modified, like in the block wordset word UPDATE
<veltas> Well that's one way to do it
<nihilazo> huh, that makes sense I guess
<nihilazo> and then when you draw you clear those modified flags
<nihilazo> I will implement something like that tomorrow, for now I'm just happy to have gforth running on my tablet
<veltas> :)
<crc> i've never successfully built gforth from source
<f-a> I have done it like a week ago
<f-a> but on x64
<nihilazo> I did it on x64 a while ago and now on aarch64
<nihilazo> to get it building on aarch64 required modding the arch pkgbuild a bit and some manual automake tweaking but it built and works
<nihilazo> and packages for arch
<nihilazo> sadly idk how to automate my manual automake fiddling and submit an updated pkgbuild
<inode> crc: building on something other than linux i'm guessing?
<crc> I've tried on linux (,
<crc> slackware), freebsd, and openbsd
<crc> the linux one partially works, but I had weird errors with the ffi
<boru> Were you building from ports on BSD?
<crc> no, I didn't have ports setup on that box
* crc doesn't care much, it was more to see how the build would work. in any case, it's more troublesome than I want to deal with.
<boru> Ah, that'd probably help. I can confirm that it builds fine on amd64, arm64 and sparc.
<boru> From ports, that is.
<nihilazo> I'm not sure I like gforth but it's the most available forth I've found across linux distros
<nihilazo> and the one that's installed on the pubnix I'm writing my game for, most importantly in my specific case
<boru> TBF, not much trouble with `cd $PORTSDIR/lang/gforth; make` or `portmaster lang/gforth` (if you don't just want to get it from binary packages.
<inode> the only major issues i encountered were during crosscompilation, and that was solved with qemu user-mode emul and binfmt to persuade the final stages that they're running on the target instead of the build machine
<boru> I didn't realise this was related to cross compiling; I build native everywhere. That said, for cross building, I have jail for that.
<boru> A jail, rather.
hosewiejacke has joined #forth
hosewiejacke has quit [Client Quit]
gravicappa has quit [Ping timeout: 260 seconds]
<mark4> sts-q: im not using any libc calls from linux, im doing direct system calls
<mark4> what kernel version are you using? the fact that it made it all the way through the extend right up to the fsave says you are not that far out of date
<veltas> crc: It's easier to build an older version, newer version I think requires gforth to build, that's how I do it on a blank install
<veltas> I don't really understand it either and I hate how over-complicated it is, I think they could do a lot to simplify it
<crc> I use gforth only occasionally to test ans code; I can't use it for anything serious
<veltas> I like SwiftForth but it's proprietary
<veltas> If I write an AMD64 forth I will base it on mark4's x4 probably, or jonesforth maybe
<nihilazo> pforth is fun, but probably only because I use it on plan9
astrid has quit [Ping timeout: 276 seconds]
astrid has joined #forth
f-a has quit [Read error: Connection reset by peer]
astrid has quit [Ping timeout: 264 seconds]
astrid has joined #forth
tech_exorcist has quit [Quit: tech_exorcist]
TCZ has joined #forth