IRC channel logs
2024-08-17.log
back to list of logs
<nimaje>andydude: why are those delta* functions inside a class? why do you have that ScannerDFA class at all? why did you not combine those delta* functions into one? why use those next* functions instead of iterators/generators? (writing better python should at least half that code size) <mid-kid>Unrelated to live-bootstrap, but does anyone know how to specify the amount of threads that apache-ant may use? <mid-kid>I have a problem where ant works on my laptop but not on my new PC <mid-kid>And I fear that may be related to 8 vs 20 threads <mid-kid>(if he doesn't then this might be good information for his bootstrap too) <stikonas>no, I don't know how to specify ant threads... <mid-kid>stikonas: what kind of machine do you use to test gentoo-bootstrap? <mid-kid>64GB is kinda insane but that rules out one theory <mid-kid>giving up for now, I'll just copy an ant distribution from my laptop <mid-kid>nah the problem doesn't seem to be parallelism - I don't think the ant bootstrap has any, or at least htop is only reporting one thread... <aggi>tcc -ar implementation is giving me headache; it is introducing further side-effects with static-linking <aggi>it is difficult to communicate, with git-diff of hundreds of uncommitted changes, against a portage overlay that already is somewhat degrading in quality <aggi>in recent days, i had to diff through almost 100 ebuilds, makefile.am and similar, another important lesson learned <aggi>the handling of static and dynamic linking is problematic with many, unncessarily <aggi>cyrus-sasl, just a random example <aggi>situation is, i want to retain a package set of important things, such as mutt mailer, within the stage of what tcc-toolchain is capable of <aggi>and then, cyrus-sasl ebuild/makefile is soaking hours of time, unexpectedly breaking various dependencies etc etc. <aggi>just because, tcc -ar behaved slightly different (which was another few hours wasted to spot this iregularity) <aggi>i think i covered all of those issues with sufficient testing, and, i can emit a complete userspace already with tcc-toolchain <aggi>the necessary testing and cleanup needs to be done <aggi>and i will have to decide soon, how to cope with the forced transition away from gentoo-tooling <aggi>because i see little to no chance to salvage python/portage <aggi>and since this is lost, i may not need to bother with perl/autotools anymore either, and re-write a few hundred makefiles from scratch <aggi>and i want to avoid an approach which is rather common, such as spawning a separate build/packaging system atop an existing system-integration procedure <aggi>(such as netbsd pkgsrc atop some lfs/slackware style base-system), because then this duplicates efforts necessary further <mid-kid>I think if you want tcc to work with a wider array of software you might need to consider further developing tcc <aggi>tcc already does work with such, it's rather capable already <aggi>it just reveals, what issues there are on the GNU/linux/gentoo side, which are wrapped into and hidden behind a dozen layers of complexity in the build/packaging-system <lanodan>which I think is one of the big reasons why oasis just works around that <aggi>which made me think, if simple makefiles didn't suffice for most of what oasis accomplished <lanodan>Probably could use BSD make if you want to go that route, at least bsd.mk sounds like a good way to keep static makefiles yet still have configuration. <mid-kid>the complexity is there for a reason most of the time imo <mid-kid>in particular, gentoo and portage have grown into the monsters they are today because hundreds of people have come and gone to scratch their itches and hopefully help other people as well in the process <mid-kid>can you strip away a ton? sure, but you will undoubtedly disappoint a lot of people as well <mid-kid>it can always be done better, of course, but reducing for the sake of reducing rarely works out in my experience <mid-kid>you tend to end up with something which can only serve one use case if any at all <mid-kid>which can be ok! after all, most of the tools in live-bootstrap only serve the case of building the next thing in the chain <stikonas>and most of the tools in live-bootstrap are added so that we can rebuild pregenerated files <mid-kid>but I'm really lost as to what you're aiming for with the tcc project <aggi>compile-time performance is superb, to name one <aggi>next, i got a complete system profile sanitized, to avoid c++ <andydude>I can agree with you that c++ should be avoided, but might I also recommend adding perl5 to that list? <stikonas>restricting to just C doens't really make sense <aggi>me neither, and i do not refuse c++, i merely do not accept c++ where it doesn't belong <stikonas>just saying that's what happens if one only allows tcc <stikonas>but one needs some other c++ compiler then <mid-kid>making a build system for every single project, and/or patching them, is an angle which you can take if you don't care too much about tracking upstream releases (you'll be forking them in essence) <aggi>i do not refuse gcc/g++ neihter, but i try to move the necessity to have it into a later stage of bootstrapping <stikonas>anyway, good compiler performance is there because there are no optimizations <stikonas>well, self-hosted M2-Planet might be slower... <mid-kid>I know chibicc is a compiler similar to tcc which I've actually managed to compile some of my projects with <stikonas>well, partially tcc is also fast cause it outputs machine code <stikonas>but that makes tcc source fairly unreadable <stikonas>and even without that, tcc is really hard to work with <stikonas>full of 1 or 2 letter variable names there <andydude>what if there was a language that was like concatenative, so that each word in that language had a 1-to-1 correspondence with binary <aggi>"15 packages have failed to build, install, or execute", of a total of ~500, that is with AR=tcc-ar <aggi>it isn't too bad, and it affects things like sasl/mutt-mailer <mid-kid>I'm not old enough to have dabbled in forth <andydude>I used to have a powerpc with openfirmware on it, tried to hack the bootloader with forth <andydude>most forths these days try to use ANS standard, except perhaps fact factor <andydude>I wonder if anyone has written a c compiler in factor <mid-kid>tbh I think mes does the "bootstrapping from a minimalist language" thing well enough <aggi>it's the only project that i am aware, that accomplished it <aggi>to arrive at any gnu/posix <Googulator>mid-kid: I just wish mes's target language (currently Scheme) used brackets {} instead of parentheses () - not because one is better than the other, but because of the traditions built around them <Googulator>vs bunching parens at the end of the line... aaaargh <Googulator>"But emacs handles balancing parens for you" - yeah, f*** emacs, I don't have or want a Space Cadet keyboard