Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-4041-8081-120121-160161-200201-240241-280281-320321-

suckless unix tools

Name: Anonymous 2015-04-02 21:41

Name: Anonymous 2015-04-02 22:10

suckdickss

Name: Anonymous 2015-04-02 22:16

This is what Cudder tried to do with his anonutils back in... 2008? But as we know, Cudder is all talk and no action, so the end result was around a dozen half-assed, incomplete, bug-ridden utils.
Learn from this, Cudder, you little prick.

Name: Anonymous 2015-04-02 22:30

Name: Anonymous 2015-04-02 22:43

>>4
How is it incorrect? It's 100% POSIX 2013 compliant.

Name: Anonymous 2015-04-02 23:31

it doesnt print shit that loons like cmdline arg

Name: Anonymous 2015-04-03 0:00

>>5
No, it is not. Let's see

The echo utility shall not recognize the "--" argument in the manner specified by Guideline 10 of XBD Utility Syntax Guidelines; "--" shall be recognized as a string operand.

Implementations shall not support any options.

Name: Anonymous 2015-04-03 8:36

Suckless? LOL, more like dickless, even the echo is wrong. And that's the easiest of them.

Name: Anonymous 2015-04-03 11:36

Name: Anonymous 2015-04-03 11:49

Name: Anonymous 2015-04-03 12:28

>>6

I presume "loons" is a typo of "looks". If I understand you
correctly, you are wrong:

; ./echo -h -a hello
-h -a hello

Are you suggesting you thought it would not print '-h -a'?

Name: Anonymous 2015-04-03 13:40

For comparison, Cudder's echo(1) from anoncoreutils[1]

/* @echo.c */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char **argv) {
int i=1, no_nl=0, ret=0;
if(argc>1 && !strcmp(argv[1],"-n")) {
no_nl=1;
i++;
}
while(i<argc) {
ret|=(fputs(argv[i++], stdout)==EOF);
if(i!=argc)
ret|=(fputc(' ',stdout)==EOF);
}
if(!no_nl)
ret|=(fputc('\n',stdout)==EOF);
return ret;
}


[1] http://rechan.eu.org/misc/anoncoreutils-20080617-2.tar.bz2

Name: Anonymous 2015-04-03 13:41

And here's sbase echo(1) [1]

/* See LICENSE file for copyright and license details. */
#include <stdio.h>
#include <string.h>
#include "util.h"

int
main(int argc, char *argv[])
{
int nflag = 0;

if (*++argv && !strcmp(*argv, "-n")) {
nflag = 1;
argc--, argv++;
}

for (; *argv; argc--, argv++)
putword(*argv);
if (!nflag)
putchar('\n');

return 0;
}


http://git.2f30.org/sbase/tree/echo.c

Name: Anonymous 2015-04-03 13:59

I SUMMON LAC!!!

Name: Anonymous 2015-04-03 16:16

I think the command ``command'' is very useful, especially the -v option.

When the -v or -V option is used, the command utility shall provide information concerning how a command name is interpreted by the shell.

So you can do ``command -v program'' and get the location of ``program''. It's pretty neat.

Can sbase get this command, please?

http://pubs.opengroup.org/onlinepubs/9699919799/utilities/command.html

Name: Anonymous 2015-04-03 20:59

It lacks error handling, below is bash's echo
$ echo test > /dev/full
bash: echo: write error: No space left on device
$ echo $?
1


Bellow is suckmore's echo
$ echo test > /dev/full
$ echo $?
0


Based on POSIX if an error has occurred echo should return a value bigger than 0. It also may use stderr for diagnostic messages.

Name: Anonymous 2015-04-03 21:28

>>16

This is a "known issue".
Basically, on return, the system flushes all buffers. in case flushing errors-out (the libc fails to write its internal buffers to the kernel device) it can't report an error and ignores it.
GNU coreutils solve this by having an onexit-function doing the cleanup and reporting errors in case something fails.
However, _exit is usually used across sbase which doesn't call onexit-functions and generally speaking, onexit-functions are a pain in the ass to take care of.
Another idea was to have a efclose-function which closes stdin and stdout at the end and reports an error in case it fails. However, it's not simple to take care of that across sbase either. In the end, the conclusion was that this is a more or less non-priority issue.
This has been kept it mind, same with echo, but not reflected on it as there were more important issues.

If you have any ideas, let it be known.

Name: Anonymous 2015-04-03 21:36

I copy-pasted >>17 from IRC.
The developers said they won't use this BBS because they aren't hipsters and that people should send patches. They don't give a damn about anything but patches, even though >>7-san made them review echo(1).
Who the hell criticizes people testing their software and reporting bugs? LOL
I've never seen this before.

Name: Anonymous 2015-04-03 22:23

>>17
What's wrong with this? return fclose (stdout) == EOF;
It seems to work nicely for the case of >/dev/full, fflush works fine too.
Or they could just use write(2) like their friends at plan9, write does not use buffers. (or just disable buffering on stdout)

Name: Anonymous 2015-04-04 5:03

>>18 Why would they give a damn about this BBS... They don't get it, they're filthy casuals.
>>3 I remember... fuckn spammin his AnonOS project everywhere

Name: Anonymous 2015-04-04 19:05

>>18
4chan/g/ ``trolling'' mozilla. Social Justice Warriors spamming mailing lists. There's a reason for it.

Name: Anonymous 2015-04-04 19:49

Name: Anonymous 2015-04-04 20:20

>>22
Amazing how fast things can change when your code is not an XBOX HUEG pig disgusting mess.

Name: Anonymous 2015-04-04 20:28

suckless
The developers said they won't use this BBS because they aren't hipsters
in theatres september 1993
Potmeetskettle
"Hilarious!" - Paul Arden, Minneapolis Gazette

Name: Anonymous 2015-04-04 22:50

Name: Anonymous 2015-04-04 22:50

Name: Anonymous 2015-04-04 22:51

Name: Anonymous 2015-04-04 22:57

>>25-27
Go back to /g/, please!

Name: Anonymous 2015-04-04 23:33

Name: Anonymous 2015-04-05 2:13

Name: Anonymous 2015-04-05 7:23

Great Satori~n, this isn't just coreutils, it's a complete system, using musl libc, static linking, binary packages & source ports, etc. etc.

http://morpheus.2f30.org/

It's too bad the last update was 2014, they need more people to keep the packages current.

Name: Anonymous 2015-04-05 11:13

>>31
Alpine Linux is a complete system using musl libc.
Why not work on it instead of coming up with another distribution?
Just convince Alpine developers to migrate to sbase, sinit, etc. and be done with it.
Can you imagine Morpheus getting libreoffice, firefox and all other big programs? I can't.

Name: Anonymous 2015-04-05 11:44

>>30
Wow, nice. Except it should've been implemented in Haskell, not Racket.

Name: Anonymous 2015-04-05 23:02

>>33
Wow, nice. Except these dubs should have been gotten by a more worthy poster.

Name: Anonymous 2015-04-05 23:07

>>30
Who are you quoting?

Name: Anonymous 2015-04-06 5:20

>>35
*whom

Name: Anonymous 2015-04-14 15:42

Name: Anonymous 2015-04-14 15:58

/* because putting integers in pointers is undefined by the standard */
What? uintptr_t is very well defined.

Name: Anonymous 2015-04-14 19:29

>>38
uintptr_t is unsigned. It looks like the author wants a signed integer here and that is a significant difference.

Technically uintptr_t is also a POSIXism so if you actually care about non-Unix like systems it's best not to rely on it. Since this is a suckless project I assume that is not the case here, though.

Name: Anonymous 2015-04-14 19:59

SuckLess Unix Tools

Name: Anonymous 2015-04-15 16:16

>>39
How is it a POSIXism? It's standardized in C11 and was already in C99 if I remember correctly.

Name: Anonymous 2015-04-15 16:34

>>39
Why would anyone care about non-Unix platforms besides maybe Windows, which is never going to be truly portable without massive rewrites or compatibility layers anuway?

Name: Anonymous 2015-04-15 16:39

uintptr_t is unsigned. It looks like the author wants a signed integer here and that is a significant difference.

I don't know which commit you're referring to, but conversion from a signed integer of the same size to uintptr_t is well-defined by The Standard, see 6.3.1.3.

Name: Anonymous 2015-04-15 16:44

why would a pointer ever be "signed"?

a pointer difference I can understand but not this..

Name: Anonymous 2015-04-15 17:27

>>44
It's not the pointer that is signed, read DA STANDARD.

Name: Anonymous 2015-04-15 18:14

>>41
Unix programmers have been stashing pointers in longs and the like since (approximately) the beginning of time. POSIX provides cover for many historic practices like this one (use of void * to store function pointers is another example). C99 is too recent.

>>43
It may well be defined but the conversion is still destructive.

I will confess I forgot about intptr_t entirely. I believe this particular code could get away with using an intptr_t or if the the range of values to be stored will fit in an intptr_t.

Name: Anonymous 2015-04-15 18:44

>>19
I am guessing it is just laziness. According to >>17 sbase is relying on required implementation behavior of closing streams after exit, which is of course too late if you want to set the exit status should closing fail. This is painful if you have a lot of streams open but in the case of things like echo it is not so hard.

Name: Anonymous 2015-04-15 19:07

>>46
Too recent for what?

Name: Anonymous 2015-04-18 8:29

>>48
;) ur mom

Name: FRIGN 2015-04-18 18:23

>>47
No, it's not laziness. We found out it's not mandated by POSIX that the fclose-function should return an error in case the flush fails (yes, you read that right).
Glibc just behaves this way, and we only noticed that after testing with musl and discussing this with the musl-developers.

fshut() is the combination of literally a day's work of reading standards and applying best practices. A simple fclose() is not sufficient here.

Name: Anonymous 2015-04-18 21:36

>>50
I think the musl developers are being legalistic here. The description of fclose in C89 says it shall deliver buffered data to the host environment (just like fflush does) and return EOF if any errors occur. Not returning EOF for a write error just because it's not specifically called out like the fflush description does is bullshit, or at least very surprising.

Can you name any libc other than musl that behaves this way?

Name: Anonymous 2015-04-18 21:50

In fact, POSIX has exactly the same text in fflush and fclose in the RETURN VALUE section (except the "it shall set the error indicator for the stream" part simply because the stream will be closed).
It also says "The fclose() function shall cause the stream pointed to by stream to be flushed and the associated file to be closed". It does not say anything about not returning EOF if an error has happened in the flushing part.
And in fact, some of the ERRORS in the POSIX page are about flushing failing.

Name: Anonymous 2015-04-19 6:06

>>52
Yeah, looking at the POSIX.1-2013 version of the spec, if you look at the History section for fclose, you see that the errno values for the errors that could occur during fflush were added a couple of years before POSIX.1-2008 was ratified.

musl advertises itself as supporting POSIX.1-2008, but maybe the musl developers erroneously were looking at the older IEEE 1003.1-2001 spec when implementing some of those functions.

Name: Anonymous 2015-04-19 12:07

Name: Anonymous 2015-04-19 12:08

Name: Anonymous 2015-04-19 14:17

>>54
>>55
why are you linking this garbage?

Name: Anonymous 2015-04-19 16:45

>>55
recurse() is getting smarter every day. I expect it to pass the Turing
test in a few months.

Better hope Mentifex doesn't catch wind of this.

Name: Anonymous 2015-04-19 20:10

I hope Mentifex doesn't catch wind of this!

*farts*

Name: Anonymous 2015-04-19 21:02

>>58
I should hope he doesn't, you rude degenerate.

Name: Anonymous 2015-04-20 11:49

>>56
Optimize your quotes, 「下さい」

Name: Anonymous 2015-04-20 16:55

New commits. Check them out.

Name: Anonymous 2015-04-20 17:49

>>61
no

:grumpycat:

Name: Anonymous 2015-04-20 17:53

>>61
They commit too fast so it's not easy to track.

Name: Anonymous 2015-04-21 11:05

Tools still not implemented:
at
awk
bc
diff
ed
getconf
install
od
patch
pathchk
stty

Anyone interested in giving a try on one of these?
Send a patch.

Name: Anonymous 2015-04-21 13:36

It's now possible to tar multiple files in a single run
http://git.2f30.org/sbase/commit/?id=76aa9c05736b0e4e2f06fa45945e5cf702347c48

Name: Anonymous 2015-04-21 15:42

are you suckless developers?

why are you posting this here?

Name: Anonymous 2015-04-21 15:51

In the README0 it says tar is audited. Why so many changes and fixes, then? Audited should mean it's pretty close to perfect. Remove the audit flag and audit everything again, I propose. And keep doing that: multiple audits. What do you think?

0 http://git.2f30.org/sbase/tree/README

Name: Anonymous 2015-04-21 16:48

Why is there no dc? It's my favourite program. And it's the oldest language shipped in UNIX (older than C).

Name: Anonymous 2015-04-21 17:06

send a patch fgt

Name: Anonymous 2015-04-21 20:19

>>69
Sent :^)

Name: Anonymous 2015-04-21 22:49

why is this being spammed here

Name: Anonymous 2015-04-22 1:21

>>71
Because Cudder is all talk and no action, so his anoncoreutils failed hard.
sbase is actually good.

Name: Anonymous 2015-04-22 2:15

>>72
just stop

Name: Anonymous 2015-04-22 2:22

I sent a patch for st. I'm using st every day now, it's sugoi!

>>73
Your idle jealousy is showing, Cudder. Your anoncoreutils were in vain, because you didn't have what it takes to see things through to completion. If only you were a man, instead of being a girl who has long lost her innocence.

Name: Anonymous 2015-04-22 2:37

>>74
Can you send a patch to make st work with the keypress ``Delete''? Onegai, it makes me nervous.

Name: Anonymous 2015-04-22 10:04

>>75
There is already an optional patch for that!

http://st.suckless.org/patches/delkey

They also explain why del doesn't work by default in the FAQ:

http://git.suckless.org/st/tree/FAQ

Name: Anonymous 2015-04-22 10:19

>>75,76
Also, if you press Ctrl-H, it generates DEL.

Name: Anonymous 2015-04-22 11:44

Only on suckless, a ``simple terminal'' consists of a single file that measures over 4000 lines.

Name: Anonymous 2015-04-22 12:37

>>78
The next simplest X11 terminal emulator is uxrvt, and it's over 32,000 lines.

Name: Anonymous 2015-04-22 12:41

>>79
I somehow doubt that urxvt is a single file.

Name: Anonymous 2015-04-22 13:56

what are you posting here

Name: Anonymous 2015-04-22 14:24

>>80
Are you suggesting that if urxvt was converted into a single source file, it would magically be less than 4000 lines of code? Surely, you jest?

Name: Anonymous 2015-04-22 14:33

>>82
Are you illiterate or just pretending?

Name: Anonymous 2015-04-22 16:18

SUCKLESS FARTING

Name: Anonymous 2015-04-22 20:33

check out this sweet web page for a top replacement

https://mmonit.com/monit/

Name: Anonymous 2015-04-22 20:38

>>85
Javascript on, please!
How about no.

Name: Anonymous 2015-04-22 22:58

It happened again: http://git.2f30.org/sbase/commit/?id=43578242669d7f6bf7c3713d2745034acbc4b804
How can tar be marked as audited if commits like this one keep happening? Something's wrong.

Name: Anonymous 2015-04-23 2:24

why is this thread here?

>>87
wow they reimplemented tar. why?

Name: Anonymous 2015-04-23 2:28

http://lists.suckless.org/dev/1504/26135.html

le freedom hating /g/entoo installer :^)

oyyy lmoa wew these guys have their dank rare memes meming nice!

Name: Anonymous 2015-04-23 2:30

Name: Anonymous 2015-04-23 2:32

it's really fucking embarassing that /b/ has leaked so bad that this is now the norm

Name: Anonymous 2015-04-23 2:36

ok some faggot is trying to make us look bad by pasting crap from this thread into their ML:

http://lists.suckless.org/dev/1504/26153.html

Name: Anonymous 2015-04-23 3:44

Stupid thread. Worthless project. Stop posting this garbage.

>>92
It's you and you know it.

Name: Anonymous 2015-04-23 14:58

>>93
no it's genuinely not, I just discovered this and thought it would be useful for the shitters here to know.

Name: Anonymous 2015-04-23 17:27

>>94
How is that in any way useful?

Name: FRIGN 2015-04-24 8:51

>>87
Tuning in again, because a colleague linked me here.

Please do not misunderstand the term "audit" in this context.
It's not easily chosen, as we have security audits in relevant
places, but the raw term "audit" is equivalent to a "revision",
and that's exactly what I did in the code.

Over the years, we've improved our coding style and how to write good code, so the audits made sure these good styles were applied consistently across the base.

In no way does this claim the software is bug-free after an audit, only in a coding-state which we consider consistent.

It's easy to write bug-free software when it's trivial (e.g. echo, true, false, ...), but the more complex it gets, you can always hit new traps.
Don't shit your pants when we fix a bug in tar(1), the recent changes were fixes for edge-cases (limited user-namespace) and are an actual convenience to support tars with vendor-extensions.

We find bugs here and there, but overall, we have a stable product and for instance pass the busybox-tests without problems (modulo XSI-extensions).

Name: Anonymous 2015-04-24 15:18

Soon there will be trips, which is pretty nice. Otherwise this thread is useless.

Next time write your dickless tools in Rust. That would actually be useful.

Name: Anonymous 2015-04-24 17:47

>>97
Did you miss the "reasons not to use rust" thread? rust was btfo, provento be utter shit there

Name: Anonymous 2015-04-24 18:01

>>97
Rust sucks you loser. Gtfo!

Name: Anonymous 2015-04-24 22:23

Name: Anonymous 2015-04-24 22:33

Name: Anonymous 2015-04-24 22:45

Fuck off.

Name: Anonymous 2015-04-25 2:01

Fuck on!

Name: Anonymous 2015-04-25 2:18

Fuck high impedance?

Name: Anonymous 2015-04-25 16:42

>>96
Thanks for the clarification. For your sanity, please don't take the autists and trolls here too seriously when they critique your software, they're just doing it because they're bored and need something to shitpost about. The more intelligent among us understood what was meant by ``audit.''

Name: Anonymous 2015-04-25 19:00

>>105
Thanks for the clarification. For your sanity, please don't take the autistsshrine maidens and trollsyokai here too seriously when they critique your software, they're just doing it because they're bored and need something to shitcutepost about.
The more intelligentautistic among us understood what was meant by ``audit.''

Name: Anonymous 2015-04-26 5:15

>>106
Thanks for correcting that baka.

>>96
Would you like some tea?

Name: Anonymous 2015-04-26 12:22

Shouldn't this http://git.suckless.org/sltar/tree/ be killed now that sbase has its own tar(1) that's much better?

Name: Anonymous 2015-04-26 12:33

Name: Anonymous 2015-04-26 14:26

>>109
fuck 9base fuck you

get out plan 9 shitter

NO PLAN 9 NO PLAN 9 NO PLAN 9

Name: Anonymous 2015-04-26 14:31

GNU's better than all this retarded crap.

Name: Cudder !cXCudderUE 2015-04-26 15:58

>>3
This is what Anoncoreutils apparently turned into... even the http://git.2f30.org/sbase/about/ looks like the original STATUS file distributed with ACU.

>>12,13
Amusing that the ACU version has error checking, while the sucklessmore version doesn't despite looking very similar.

>>74
That's not me, but I'd rather start things that eventually get picked up by others so I don't have to care about them anymore and can start working on some new ideas. Besides, web browsers are far more interesting now...

Name: Anonymous 2015-04-26 16:32

>>112

Amusing that the ACU version has error checking, while the sucklessmore version doesn't despite looking very similar.

It does now.

#include <stdio.h>
#include <string.h>
#include "util.h"

int
main(int argc, char *argv[])
{
int nflag = 0;

argv0 = argv[0], argc--, argv++;

if (*argv && !strcmp(*argv, "-n")) {
nflag = 1;
argc--, argv++;
}

for (; *argv; argc--, argv++)
putword(stdout, *argv);
if (!nflag)
putchar('\n');

return fshut(stdout, "<stdout>");
}


Why don't you help with the missing tools?
Are you really all talk and no action as people say? This is your chance to actually help a project that's going to be completed.

Name: Anonymous 2015-04-26 20:43

>>113
This. Come on bakas! Let's submit them patches.

Name: cinro 2015-04-26 23:34

>>114
Let's change SIGSTOP to SIGFREEZE.

Name: Anonymous 2015-04-26 23:58

>>115
fuck right off back to 9front you sick fucker

Name: Anonymous 2015-04-27 0:44

>>116
Well, someone has to fuck the sick. If I don't do it, how else will they get laid?

Name: Cudder !cXCudderUE 2015-04-27 12:20

>>113
putword
fshut

This is not even POSIX, nor is it Windows.

I have better things to work on in the little free time I have.

Name: Anonymous 2015-04-27 15:28

Name: Anonymous 2015-04-27 15:28

>>119
which?

Name: Anonymous 2015-04-27 19:28

118
Your ignorance is great, sir. Look at util.h.
I suggest you stop whining like a little bitch and get to fucking work, you sloth!

Name: Anonymous 2015-04-27 19:33

I'm from sucklless and i wanted to say: HATE YOU FUCKERS SHIT IM SO BETTER THAN YOU ALL

Name: Anonymous 2015-04-27 19:54

>>121
util.h
Heh, that's just void.h renamed.

Name: Anonymous 2015-04-28 2:54

which which

Name: Cudder !cXCudderUE 2015-04-28 3:34

>>121
Why the fuck should I, if it's possible to write a self-contained, POSIX-compliant implementation of echo without anything but the standard library? Note that the one in >>12 is completely public-domain, as is the rest of ACU, so they could've just copied its direct simplicity.

I have a feeling this is just going to turn into another GNUish project like gnulib/libiberty/all that other shit. You are in a maze of twisty little dependencies, all alike...

This is certainly not in the spirit of ACU. I've already contributed enough in the form of ACU, if you don't want to make use of it and reinvent your own bastardised version of POSIX, then best of luck, gentlemen.

Name: Anonymous 2015-04-28 3:38

>>125
POSIX-compliant
Disgusting!

Name: Anonymous 2015-04-28 4:02

>>125
It's good to have such a maze of dependencies. It makes it easier to get users to install more of your stuff, and much harder to separate one thing from another. Same reason why GCC internals were such a mess: it prevented proprietary developers from stealing it and making new front-end language parsers or back end generators without paying the GNU Tax (your freedom from 1000 lines of license comments in every file). Genius, really.

I prefer Windows' echo though. A simple echo off will silence all echos until you turn them back on. Convenient.

Name: Anonymous 2015-04-28 8:30

>>109
I find the preponderance of static globals rather disheartening.

Name: Cudder !cXCudderUE 2015-04-28 9:50

>>126
>>127
The goal of ACU is a set of simple, self-contained standard utilities that anyone with a reasonably POSIX-compliant system could pick and choose, and compile without any further dependencies. Public-domain and anonymously contributed (I did say I started the project and wrote some of them, but you don't know which ones, and there are no names at all in the package), free for anyone to use however they want.

This suckmore is going in the opposite direction. Not public-domain, not standalone, not anonymous.

Name: Anonymous 2015-04-28 11:04

>>129
MIT/X (= ISC) is as close to public domain as possible. Additionally, there are many states who don't even ack the existence of public domain.
Which dependencies are there apart from libc in suckless base? I read the code and found none.
You are only anonymous because your face is ugly.

Name: Anonymous 2015-04-28 11:21

>>129
you're an absolute joke kid, shut up

Name: Anonymous 2015-04-28 15:45

>>129
Since when is it bad to put common functions used by the many tools in their own .c files? That's what libutil and libutf are. They make sure there's no unnecessary duplication of functions over the many different tools.
But you wouldn't know that, since your attempt with ACU was absolutely superficial and the scarce tools you implemented probably didn't have common functions.
Get lost, kid.
You are all talk and no action. You never finishes anything you start.

Name: Anonymous 2015-04-28 20:29

1. put the code into a separate library
2. statically link that library in each binary it's used

fucking LOL

suckless logic is almost the same as women logic (utterly retarded)

Name: Anonymous 2015-04-28 20:35

suckless hello world implementation:
#include "util.h"
int main() {
print_hello();
}

LOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOL

Name: Anonymous 2015-04-28 22:38

Wow, check out this putword implementation
/* See LICENSE file for copyright and license details. */
#include <stdio.h>

#include "../util.h"

void
putword(FILE *fp, const char *s)
{
static int first = 1;

if (!first)
fputc(' ', fp);

fputs(s, fp);
first = 0;
}

Name: Anonymous 2015-04-29 3:53

Me thinks >>130-132 are the same.

Name: Anonymous 2015-04-29 3:54

Me thinks >>133-135 are the same.

Name: Anonymous 2015-04-29 7:38

>>135
Weird function, seems esoteric and tied to some particular code. It's not even reentrant!

Name: Anonymous 2015-04-29 7:59

>>137
I admit, you are correct. But that's just because there is not edit-button.

Name: Cudder !cXCudderUE 2015-04-29 11:52

>>132
If anything the amount of extra space you're taking up in the symbol table with an additional (imported) function call and the code of this >>135 absolutely trivially stupid function is far more than just integrating the bloody thing into the source. It is literally a compare with an existing variable and a conditional function call, which you can't do if you decide to pull it out separately so you have to make an extra fucking variable THAT IS ONLY EVER USED ONCE! Instead you have to go through the motions of passing parameters and register saving/restoring and all that stupid shit that compilers do when they call functions.

Why don't you refactor all the for loops out into their own function too? Or all the if statements? After all, they are "duplicated code". This is near that level of retardedness.

You've also not propagated errors correctly... so it is a FAIL!

Name: Cudder !cXCudderUE 2015-04-29 11:57

...and your stupid function call bloat (5 bytes + import table + register save/return + ...) turns into a single 2-byte jump instruction if we use the power of goto:

goto loopin;
while(i<argc) {
ret|=(fputc(' ',stdout)==EOF);
loopin:
ret|=(fputs(argv[i++], stdout)==EOF);
}


I don't think I wrote the original ACU echo... if I did, it would look more like this.

Name: sin 2015-04-29 13:13

Your work inspires me.

Name: FRIGN 2015-04-29 16:16

>>140

Hey Cudder,

If anything the amount of extra space you're taking up in the symbol
table with an additional (imported) function call and the code of the
putword function, for example, absolutely trivially stupid function is
far more than just integrating the bloody thing into the source. It is
literally a compare with an existing variable and a conditional
function call, which you can't do if you decide to pull it out
separately so you have to make an extra fucking variable THAT IS ONLY
EVER USED ONCE! Instead you have to go through the motions of passing
parameters and register saving/restoring and all that stupid shit that
compilers do when they call functions.

It is one thing when your ACU project is slammed on some message board
on the Interwebs, it's another when you start "criticizing" another
project on false grounds.
I'll give you a small hint: The symbol table does not matter too much
in statically linked applications (and that's what's supposed to happen)
and libutil is not dynamically linked into the binaries.
If the compiler detects a function to be "trivial", it will inline it
automatically. I can understand the motivation to do that manually to
optimize the code, but premature optimizations are the first step
towards broken and unmaintainable, chaotic code (look at ACU).

Why don't you refactor all the for loops out into their own function
too? Or all the if statements? After all, they are "duplicated code".
This is near that level of retardedness.

Check out GNU coreutils if you like that.

You've also not propagated errors correctly... so it is a FAIL!

Where?

Cheers

Name: Anonymous 2015-04-29 16:35

>>143
broken and unmaintainable, chaotic code (look at ACU).
ハハハ/ \ / \ / \

Name: Cudder !cXCudderUE 2015-04-29 16:37

>>143
The symbol table does not matter too much in statically linked applications (and that's what's supposed to happen)
Oh $deity... :facepalm:

So you do all that work of extracting the function to avoid "duplicate code"... just so the compiler can put it back the way it should've been written in the first place!? WTF.

I can understand the motivation to do that manually to
optimize the code
It's about optimising for efficiency and readability. By extracting that function you have required the reader to know what that function does... when she finds out, it happens to be something inanely trivial... and you're doing it in one of the most trivial of utilities.

premature optimizations
You're making premature pessimisations instead.

broken and unmaintainable, chaotic code (look at ACU).
Using big words like "unmaintainable" and "chaotic" does not help your argument. The ACU echo does not require anyone with familiarity with the POSIX interface to read more than a single file to figure out what it does.

Where?
Figure it out yourself if you think you're so smart.

Name: Anonymous 2015-04-29 17:03

ACU is indeed superior: http://sprunge.us/BcDT

That's a handrolled dirname(3) implementation that nobody can read. I guess using the standard dirname is overkill here.

I particularly enjoy the step_6 label.

Name: Anonymous 2015-04-29 17:15

>>146
step_6:
//i inits with length of argument 1(directory) = last letter of dirname
//if (current letter of dirname is not NULL(superfluous) and is '/'(slash separator ) decrement i at end of loop
for(i=strlen(argv[1])-1;argv[1][i]&&argv[1][i]=='/';i--)
//set current letter to NULL(0) truncating the string
argv[1][i]=0;
if(argv[1][0])//if first letter isn't NULL
printf("%s\n",argv[1]);//print dirname
else
single_slash: printf("/\n");

Name: Anonymous 2015-04-29 18:39

>>147
Faggot
step_6:
for(i=strlen(argv[1])-1;argv[1][i]&&argv[1][i]=='/';i--)
argv[1][i]=0;
if(argv[1][0])
printf("%s\n",argv[1]);
else
single_slash: printf("/\n");
} else
single_dot:
printf(".\n");

Name: Anonymous 2015-04-29 18:49

puts(dirname(argv[1]));

Name: Anonymous 2015-04-29 18:51

BLOAAAAT

Name: Anonymous 2015-04-29 18:53

using things like for loops and if when the full power of GOTO is available to you.

I can't stand bloatprogrammers that use bloat languages like C>

Name: Anonymous 2015-04-29 19:29

>>151
Whom are you quoting?

Name: Anonymous 2015-04-29 19:39

>>151
back to jp with you

Name: Anonymous 2015-04-29 20:05

Name: Anonymous 2015-04-29 20:06

>>153
What is a ``jp''?

Name: Anonymous 2015-04-29 21:13

>>155
It's an abbreviation for Japan.

Name: Anonymous 2015-04-29 21:17

>>156
But how could I go back to Japan if I've never been there? Is >>153-hime retarded?

Name: Anonymous 2015-04-29 23:20

le pretending not to understand trole

Name: Anonymous 2015-04-30 2:21

>>143
Your post was friendly, beginning with in an innocent Hey Cudder and ending with a cheers. But in between the key presses that emanated that text your blood was pumping. Your face was red. Your eyes were focused and your fingers moved with dedicated purpose. When you read cudder-sama's post, something within you broke. Something precious. Your investment in your project and your ego as a eipc coder was threatened. It clicked and you had to retaliate towards the psychological threat. Level it to the ground with a well prepared post. You composed it. You kept it professional. But between the lines, you delivered the attacks that your wounded spirit required. You put your attacker in its place. You recovered your presumed title. You proved your competence. And most importantly, you re-validated your investment in the project that lies so closely to your heart and your identity. And you did it all by typing out a paragraph in a text box.

Name: Anonymous 2015-04-30 2:22

>>158
Whom are you quoting?

Name: Anonymous 2015-04-30 2:35

>>159

Nice.

Name: Anonymous 2015-04-30 2:57

>>155,157
It's more than just Japan. It's a very special place.

Name: Anonymous 2015-04-30 3:01

>>155,157
It's more than just Japan. It's a very special place.

Name: Anonymous 2015-04-30 3:15

>>162,163

Not anymore. It's a very stupid place now.

Name: Anonymous 2015-04-30 4:16

What is the point of sbase... you cn implement.all those unix tools in one line of haskell each

Name: Anonymous 2015-04-30 7:09

http://lists.suckless.org/dev/1504/26642.html

Hi MarcCudder,
You really don't have to be such a twat about all this. Just offer
your suggestion without the unnecessary abrasiveness.
What I got from your link is that someone negatively compared your
work to sbase, and now you've got a bee in your bonnet over it. Are we
really going to have to put up with this noise?
Thanks,
cls

now you've got a bee in your bonnet over it

http://i.imgur.com/hVBs2bu.jpg

Name: Anonymous 2015-04-30 7:19

>>166
Diggin a little about that e-mail address gives me the creeps.

Name: Anonymous 2015-04-30 7:34

>>167
cls's email address?

Name: Anonymous 2015-04-30 8:03

whoa dude, were we talking to copypaste from their mailing list the whole time? I'm a little weirded out, but nevertheless, cute pic >>166-kun.

Name: Cudder !cXCudderUE 2015-04-30 14:04

>>146 see >>154 that is what "step 6" means.

>>151
I know you're trying to be trollish but here's a hint for everyone else who doesn't get it: loops and if/else are useful when they fit the flow of the code. goto is for all the situations when they don't.

>>166
Who are the left and right faces in the top left corner?

Also, http://lists.suckless.org/dev/1504/26645.html

>>167
Apparently I have a fan who enjoys copying my posts here and sending them off to mailing lists...

http://article.gmane.org/gmane.comp.misc.suckless/18857/match=
http://bbs.progrider.org/prog/read/1406427616/549

If the sucklessmore guys want to join in here, they're welcome to test their luck!

Name: Anonymous 2015-04-30 14:28

>>170
Stop copying other's posts, Cudder.

Name: Anonymous 2015-04-30 16:22

>>171
There are things called timestamps, you know.

Name: Anonymous 2015-04-30 16:53

>>172
That's not a good reason to copy them.

Name: Anonymous 2015-04-30 17:36

>>166
Hi, I got here from the mailing list post. That picture made it worth it.

Too much shitposting though. I'm not sticking around.

Name: Anonymous 2015-04-30 23:26

>>174
Are there anyone else from 2f30 here to actually discuss Cudder's points? Where's sin, cls, FRIGN and all others?
This BBS is funny. They must join US here.

Name: Anonymous 2015-05-01 2:41

>>170
John McCarthy, Dennis Ritchie, and Uriel

Name: Cudder !cXCudderUE 2015-05-01 5:22

>>174
Grow some thicker skin.

https://en.wikipedia.org/wiki/Management_by_perkele

And you are still welcome to take what you want from ACU, especially the better parts.

Name: Anonymous 2015-05-01 9:25

>>175

No wonder they don't join us here. This place is full of retards. And Cudder is a bloody idiot.

Name: Anonymous 2015-05-01 9:53

>>175
US
United States?

Name: Cudder !cXCudderUE 2015-05-01 15:52

>>178
u w0t m8

Name: Anonymous 2015-05-01 19:05

>>170
Tyrion Lannister, Steve Buscemi with a beard, and Patrick Bateman.

Name: Anonymous 2015-05-01 23:23

>>170
That "fan" of yours is a kernel dev, you aware?

Name: Anonymous 2015-05-01 23:42

>>182
Yes, I'm a kernel dev. Express your respect here, now.

Name: Anonymous 2015-05-01 23:51

>>183
respect!

Name: Anonymous 2015-05-02 0:05

>>183
That's so awesome! Would you hax my anus?

Name: thread is disagreeable. 2015-05-02 1:54

Sage is a Japanese word meaning 'vote down' used when a thread is disagreeable.

Name: Anonymous 2015-05-02 1:57

suckless unix tools suck less.

Name: Anonymous 2015-05-02 2:05

>>186
Sage is a Russian word meaning 'soot' used when a thread is disagreeable.

Name: thread is legendary 2015-05-02 2:14

Sage is a German word meaning 'legend' used when a thread is a legendary.

Name: Anonymous 2015-05-03 14:30

Core utilities (unix tools) should be written in ASM.
No exceptions.

Name: Anonymous 2015-05-03 14:35

>>190
But C doesn't have any exceptions either.

Name: Anonymous 2015-05-03 16:35

>>190
Which one?

Name: Anonymous 2015-05-03 17:32

>>190
All of them.
No exceptions.

Name: Anonymous 2015-05-03 18:42

Stack-based exceptions only.
Mobile go home.

Name: Führer 2015-08-03 17:58

bumper

Name: Anonymous 2015-08-03 19:15

suckle my anus

Name: Anonymous 2015-08-03 20:02

I remember suigin was implementing bc for sbase, did he finish it? Will he help with more utilities?

Name: Anonymous 2015-08-03 20:08

I don't give a shit about sui/g/in and bc

Name: Anonymous 2015-08-03 20:15

>>198
Suigin is actually one of the few people here to put out some cool programs. I had a great time playing with his sstoy and studying the source code.
Not trying to diminish all the fun/ironic threads and off-topic, that's cool too. But suigin is one of the only people to provide technical stuff that's nice.

Name: /suckjews/ 2015-08-03 21:35

/suckjews/
sage
sage
SAGEEEEEEEE
fucking useless tools fucking suigin faggot I fucking hate him and fuck you >>199
and you too >>198
and you too >>197
and you too >>196
and you too >>195
and you too >>194
and you too >>193
and you too >>192
and you too >>191
and you too >>190
and you too >>189
and you too >>188
and you too >>187
and you too >>186
and you too >>185
and you too >>184
and you too >>183
and you too >>182
and you too >>181
and you too >>180
and you too >>179
and you too >>178
and you too >>177
and you too >>176
and you too >>175
and you too >>174
and you too >>173
and you too >>172
and you too >>171
and you too >>170
and you too >>169
and you too >>168
and you too >>167
and you too >>166
and you too >>165
and you too >>164
and you too >>163
and you too >>162
and you too >>161
and you too >>160
and you too >>159
and you too >>158
and you too >>157
and you too >>156
and you too >>155
and you too >>154
and you too >>153
and you too >>152
and you too >>151
and you too >>150
and you too >>149
and you too >>148
and you too >>147
and you too >>146
and you too >>145
and you too >>144
and you too >>143
and you too >>142
and you too >>141
and you too >>140
and you too >>139
and you too >>138
and you too >>137
and you too >>136
and you too >>135
and you too >>134
and you too >>133
and you too >>132
and you too >>131
and you too >>130
and you too >>129
and you too >>128
and you too >>127
and you too >>126
and you too >>125
and you too >>124
and you too >>123
and you too >>122

Name: /suckjews/ 2015-08-03 21:36

and you too >>121
and you too >>120
and you too >>119
and you too >>118
and you too >>117
and you too >>116
and you too >>115
and you too >>114
and you too >>113
and you too >>112
and you too >>111
and you too >>110
and you too >>109
and you too >>108
and you too >>107
and you too >>106
and you too >>105
and you too >>104
and you too >>103
and you too >>102
and you too >>101
and you too >>100
and you too >>99
and you too >>98
and you too >>97
and you too >>96
and you too >>95
and you too >>94
and you too >>93
and you too >>92
and you too >>91
and you too >>90
and you too >>89
and you too >>88
and you too >>87
and you too >>86
and you too >>85
and you too >>84
and you too >>83
and you too >>82
and you too >>81
and you too >>80
and you too >>79
and you too >>78
and you too >>77
and you too >>76
and you too >>75
and you too >>74
and you too >>73
and you too >>72
and you too >>71
and you too >>70
and you too >>69
and you too >>68
and you too >>67
and you too >>66
and you too >>65
and you too >>64
and you too >>63
and you too >>62
and you too >>61
and you too >>60
and you too >>59
and you too >>58
and you too >>57
and you too >>56
and you too >>55
and you too >>54
and you too >>53
and you too >>52
and you too >>51
and you too >>50
and you too >>49
and you too >>48
and you too >>47
and you too >>46
and you too >>45
and you too >>44
and you too >>43
and you too >>42
and you too >>41
and you too >>40
and you too >>39
and you too >>38
and you too >>37
and you too >>36
and you too >>35
and you too >>34
and you too >>33
and you too >>32
and you too >>31
and you too >>30
and you too >>29
and you too >>28
and you too >>27
and you too >>26
and you too >>25
and you too >>24
and you too >>23
and you too >>22
and you too >>21
and you too >>20
and you too >>19
and you too >>18
and you too >>17
and you too >>16
and you too >>15
and you too >>14
and you too >>13
and you too >>12
and you too >>11
and you too >>10
and you too >>9
and you too >>8
and you too >>7
and you too >>6
and you too >>5
and you too >>4
and you too >>3
and you too >>2
and you too >>1

Name: Anonymous 2015-08-03 23:37

>>200,201
Back to the imageboards with your sage down/b/oat, please.

Name: Anonymous 2015-08-04 0:18

>>199
what is sstoy

also I made better suckles tools than him but I get zero recognition

Name: Anonymous 2015-08-04 1:06

>>203
Spoken like a jealous imageboard teenager.

Name: Anonymous 2015-08-04 3:30

>>204
you fail now GTFO, cocksucker

Name: Anonymous 2015-08-04 11:01

Name: Anonymous 2015-08-04 11:01

Name: Anonymous 2015-08-04 11:02

Name: Anonymous 2015-08-04 12:32

Name: Anonymous 2015-08-04 14:47

>>208
This is a realy amazing commit, thank for shareing

Name: Anonymous 2015-08-04 15:24

>>203
http://webmup.com/1292f/vid.webm
https://github.com/suiginsoft/sstoy

Show us your work, man.
We just aren't aware of it. I bet it's cool too.

Name: Anonymous 2015-08-04 15:44

Name: Anonymous 2015-08-04 15:44

>>212 there's a bug in that this doesn't handle program names with spaces in them

Name: Anonymous 2015-08-04 15:48

>>212
Nice, I like it.
Does it work on grsec kernels? They have some restrictions on /proc.

Name: Anonymous 2015-08-04 16:00

>>1
Still no dc-interpreter? what a load of shit.

Name: Anonymous 2015-08-04 16:16

What I miss the most is diff/patch

Name: Anonymous 2015-08-04 16:21

>>211
Thank you for giving hina the appreciation she deserves.

Name: Anonymous 2015-08-04 18:37

>>214
i'd have to set up a grsec, didn't know about that - thanks for the heads up though.

Name: Anonymous 2015-08-05 14:13

>>216
diff is beyond the skill of even the 2f30 people

Name: Anonymous 2015-08-05 14:43

Name: Anonymous 2015-08-05 15:43

>>220
and it will remain on there forever

Name: Anonymous 2015-08-05 15:43

sbase makes this post the "acceptable trips"

Name: Anonymous 2015-08-05 16:24

>>222
dayum, whata sight!

Name: Anonymous 2015-08-06 3:27

222
You, sir, are and idiot.
Kindly Fuck off.

Name: Anonymous 2015-08-06 13:40

>>224
epic i love 4chan jokes

Name: Anonymous 2015-08-06 17:09

>>225
Actually, that's a reddit joke.

Name: Anonymous 2015-08-06 20:42

>>226
How do you know that?

Name: Anonymous 2015-08-06 22:12

>>227
I work for knowyourmeme.com

Name: just JR 2015-08-07 23:24

funny how people waste their time rewriting old unix programs, still hanging onto scraps. and still reinventing libc for all of their apps

Name: Anonymous 2015-08-08 3:09

>>229
Apparently that's as good as these jokers are good for. They don't spend time writing substantial software like CAD or graphics drivers, they're only capable of rewriting cat and ls.

Name: Anonymous 2015-08-08 11:35

Unix tools are shit.

- Text streams are not good computational interfaces.
- Multiple processes are clunky, slow, and shitty compared to interacting objects.
- The shell is a piece of cunt, again with the fucking text wrangling.
- Commandline parameters are yet more bullshit text processing for cunts, with the added bullshit of no standardization.
- Same with config files.

Fuck "Unix tools" in their crusty ancient ass. There are fucking data types beyond the 8-bit character.

Let this shit die.

Name: Anonymous 2015-08-08 17:08

>>231
But Unix tools are what I used when I first learned how to program a computer. Therefore they are the best.

Name: Anonymous 2015-08-08 17:38

>>231,232
Most people grew up with Windows. They haven't gotten a chance to look at Unix objectively.

Name: Anonymous 2015-08-08 18:06

make an OS kernel which lets you write typed 'core utils' instead of a unix style os.

Name: Anonymous 2015-08-08 18:15

>>234
Basically [String] -> [String, Int], as far as unix is concerned.

Name: Anonymous 2015-08-08 18:24

>>231
Anything beyond ASCII is a waste of space.

Name: Anonymous 2015-08-08 19:06

>>236
What about SJIS art?

Name: Anonymous 2015-08-09 0:17

WHAT ABOUT MY ANUS

Name: Anonymous 2015-10-26 13:46

http://git.suckless.org/sbase/tree/od.c

they wrote od. looks cool.

Name: Anonymous 2015-10-26 15:28

>>239
What about suigin's bc?
https://github.com/suiginsoft/bc
He's not going to send it to be part of sbase?

Name: Anonymous 2015-10-26 16:22

All I want is to write some stupid dc-scripts, but there's no dc-program?? As long as that's missing, suckless could as well be called dickless. Just another toy project.

Name: Anonymous 2015-10-26 16:37

>>241
use GNU dc?

Name: Anonymous 2015-10-26 17:05

>>241
According to their TODO, they are only going to implement bc (almost finished by suigin, but the guy seems to have disappeared? I miss him).
Anyway, feel free to suggest dc as a program for sbase, maybe they accept it.

Name: Anonymous 2015-10-26 17:08

dubs

Name: Anonymous 2015-10-26 20:09

>>240
I've been too busy the last few months to work on it, unfortunately. Wageslave job. Not happy. Maybe I should quit.

Name: Anonymous 2015-10-26 20:52

>>245
Maybe you should have never started.

Name: Anonymous 2015-10-26 22:26

>>245
Sorry to hear about that, pal.
I wish you a good outcome, whatever you decide to do.
Best wishes.

Name: Anonymous 2015-10-26 23:04

anybody is open to develop a bc/dc implementation. the problem is finding a proper bignum library.

Name: suckless bignum 2015-10-26 23:06

suckless bignum

Name: Anonymous 2015-11-23 22:10

>>146
Hahahahahahahahahahahahah

That made me laugh. What is that? My first C program?

Name: Anonymous 2015-11-23 22:43

goto is babby tier

Name: Anonymous 2015-11-24 6:30

suckless unix tools

Unix "philosophy" already sucks.

OXYMORON DETECTED

Name: Anonymous 2015-11-24 12:43

>>252
who Are you le quoting xD

Name: Anonymous 2015-12-23 20:02

hey suigin
could you please send your bc(1) to suckless people so they add it to sbase? thanks
(1) https://github.com/suiginsoft/bc

Name: Anonymous 2015-12-23 20:16

implement bc
reinvent md5

what the fckk?

Name: Anonymous 2015-12-23 20:27

>>255
epic >memes xD

Name: suigin 2015-12-23 20:34

>>254
It's far from complete, it's just the front end lexer and parser. Plus, they already know about it. Only once it's near completion would I consider notifying them about it again. I wouldn't want to waste their time otherwise.

Name: Anonymous 2015-12-23 20:57

>>255
Nice bits, bro.

Name: Anonymous 2015-12-23 21:50

>>257
what's the next stuff you want to work on?
could sstoy get config of "rendering quality"?
it runs too slow on my laptop

Name: Anonymous 2015-12-23 22:18

>>256
are you a SJW

Name: Anonymous 2015-12-23 22:53

>>260
no?

Name: Anonymous 2015-12-24 18:19

>>260
Not everyone who opposes your retarded imageboard customs is a SJW. Go fuck a fat feminist if you like them so much.

Name: suigin 2015-12-24 21:43

>>259
What's next on my list is making myself a memorable dinner for tomorrow night, to keep at bay for a few moments the darkness, misery and pointlessness of the collapsing society just beyond the walls I call home.

After that, polish off hebimath. sstoy isn't a high priority.

At this point, I don't think I'd use hebimath directly for the bignum arithmetic in bc(1). It's really more deserving of a custom and minimalistic implementation. Hebimath is more of a lightweight, general purpose replacement for parts of GMP at this moment.

Name: Anonymous 2015-12-24 21:50

>>262
just asking because you seemed to get triggered just as easily

Name: Anonymous 2016-01-13 2:35

Looks like after all this time echo is still faulty
http://git.suckless.org/sbase/tree/echo.c

``Implementations shall not support any options.'' POSIX says, however, something so simple, is simply too hard for the suckmore people to unserstand.

Name: Anonymous 2016-01-13 3:09

Name: Anonymous 2016-01-13 3:11

http://git.suckless.org/sbase/tree/util.h

The beloved people at suckmore, thought that it is a good idea to define the (useless) functions strlcat and strlcpy, forgetting, however that identifiers starting with str* are reserved by POSIX.

Name: Anonymous 2016-01-13 3:34

>>267
Write to their mailing list so they can discuss this (and probably fix).
As flawed as it may be, I still think sbase is the best implementation of the unix tools out there.
Better help than make fun and let it rot. That's my opinion. Do you share it?

Name: Anonymous 2016-01-13 3:48

I still think sbase is the best implementation of the unix tools out there.

You're literally saying that sbase is a polished turd.

I think that's an insult to polished turds.

Name: Anonymous 2016-01-13 3:50

>>269
Everything else is much worse.
Busybox, Toybox and all that don't even get utf-8 correct.
sbase works flawlessly for me. And your issues are minimal, no? Why not bring them up on the mailing list and help sbase get even better?

Name: Anonymous 2016-01-13 3:53

>>270
sbase can't get better. It, by design & by philosophy, is shit. It is following the shittiest shit of Unix legacy.

It is not written for the benefit of hypothetical sbase users, it is for the ego and lunacy of the sbase programmers themselves. Fuck them, and fuck you.

Name: Anonymous 2016-01-13 4:00

>>271
It benefits me.
For example, here are 2 cases on coreutils/busybox/toybox:

$ echo "öã" | tr -d "ö"

$ echo "1ö2ö3" | cut -d 'ö' -f 1
cut: the delimiter must be a single character

Both wrong! On sbase it works though.

Besides that there's also the fact that it is more efficient.

Are you convinced?
There's a talk on the suckless website on their last conference where the developer explains why they created sbase.

Stop being such a bully!

Name: Anonymous 2016-01-13 4:22

>>272
This is why I use real programming languages, not this incompetent ignorant-of-each-other piping shit, to do text processing. The shell sucks and should be discarded for programming languages instead of this concatenated text mess with shit C-based half-baked parsers in every fucking program bumbling along a raw char*, and tons of heavyweight processes to do something a few functions can pull off if you care at all about footprint.

Plus, the only thing you can process is UTF-8. Half the text files out there online seem to use other 8-bit encodings, if not 16-bit which was popular for a while.

Name: Anonymous 2016-01-13 4:26

>>273
So you think all unix tools are useless?
So your problem isn't with sbase only, but unix itself?
Ok, that explains a lot. I guess we have a fundamental disagreement and shouldn't talk any further.

Name: Anonymous 2016-01-13 4:34

>>274
A lot of people here have worded it a lot better than me, but dealing with pipes of bytes which may or may not be arbitrarily-encoded text is not a useful, safe, or expressive abstraction. The process boundaries are useless, expensive, and stupid for so many of these cases. It's all shit.

Name: Anonymous 2016-01-13 4:41

>>274

So you actually enjoy living in 1960s computing tech?

The rest of the world realized that their real problems, real programming expressiveness, real scalability, and real security is not met by that old cruft. Even if their solutions haven't broken free from the shackles of the past, they've made strides.

Name: Anonymous 2016-01-13 5:18

>>268
No, if they are unable to make something as simple as this, they should not make software at all. Not to mention their elitist stance (see >>18), that the issue has already reported (see http://lists.suckless.org/dev/1504/26150.html) and that they have seen this thread.

>>270
GNU Coreutils work flawlessly too, so what?

Name: Anonymous 2016-01-13 6:12

>>277
lol, re-reading >>18, it's literally "Too hard, ignoring problem".

That epitomizes what I've said about this: This is simply not useful, and far less useful than the alternatives. It's hard to abstract on top of their chosen primitives, so instead of actually making a powerful ecosystem to actually tackle problems*, they just disacknowledge it.

* = of course, everybody else has already tackled these problems

Name: Anonymous 2016-01-13 6:16

>>272
Link to the video? There's a lot of them on the site, and I can't be assed to skim them all.

Name: Anonymous 2016-01-13 11:44

"Premature optimization is the root of all evil." - Donald Trump Knuth

Suckless's root is premature optimization of code size.

Name: hojad !OUKY5mcbp6 2016-01-13 13:10

Unfortunately, the tendency for complex, error-prone and slow software seems to be prevalent in the present-day software industry. We intend to prove the opposite with our software projects.
promotes C

suckless is a NIH meme for people who value premature optimization over correctness

Name: Anonymous 2016-01-13 13:19

Suckless, more like suck this *grabs cock*.

Name: Anonymous 2016-01-13 13:43

>>279
The second one, called ``suckless core - A suckless userspace foundation''
Talk about sbase starts at 11:09

Name: Anonymous 2016-01-13 14:14

>>283
Thanks. Though it really does reinforce /prog/'s view of the project.

Name: Anonymous 2016-01-13 14:54

>>284
Care to explain why?
It convinced me that coreutils/busybox/toybox aren't good enough and why sbase is needed, especially when it comes to international users that have special characters in their mother-language, like ö ü é for example.
Didn't you like the talk? Why not?

Name: Anonymous 2016-01-13 15:06

>>281
don't be a tripfag

Name: Anonymous 2016-01-13 15:08

Only supporting UTF-8 means their 8-bit text files will not be readable. It also means you can't use grep on binary files anymore. The meaning of Unix streams is ambiguous between bytes and text, with binaries often flowing through pipes.

But in general, there's just this sense of "I don't understand why they made these features, so they're wrong", "My preference is like this, so I will present it as the one correct way", "I need a bignum library so I'm going to roll my own even though there are great, mature, focused libs out there for it already", etc. It all smells of hubris, and there's little good reason for it to be such an isolated NIH project.

Name: Anonymous 2016-01-13 16:20

>>286
don't be an imageboard sissy /g/ro

Name: Anonymous 2016-01-14 20:28

>>288
tripfagging is somehow ok because there aren't images in most of the posts
stop trying to force this. everyone can see through it.

Name: Anonymous 2016-01-14 20:33

>>289
I don't know who the fuck you're quoting!

Name: Anonymous 2016-01-14 21:10

>>290
You must be new here. Often people use the quote function to paraphrase, rather than to quote directly. I hope that this newfound knowledge will save you the trouble of going around asking everyone who they're quoting. I'm sure you'll fit in much better now that you understand the culture here a bit more. If there are any other things you don't understand about textboard culture, feel free to ask!

Name: Anonymous 2016-01-14 22:22

>>287
You shouldn't be using grep on binary files in the first place. The proper solution is to write a program to read the binary file and spit out a text file or otherwise modify the program that emits the binary file to emit an associated text file.

Name: Anonymous 2016-01-14 22:28

>>287
idk how you can defend bloat

its fucking crazy..

don't you see the mess we're in?

Name: Anonymous 2016-01-14 22:44

>>293
Your argument sounds religious.

Especially since I don't see anything in >>287 defending bloat.

or Poe's Law is strong here

Name: Anonymous 2016-01-14 22:52

>>291
That kind of culture is plain wrong! The quoting syntax is for quoting, not for paraphrasing or false quoting!

Name: Anonymous 2016-01-14 22:58

>>295
this isn't /jp/ kid

Name: Anonymous 2016-01-15 2:45

>>295
Be descriptive, not prescriptive! There's no cause for you to make value judgements about other people using the quote feature in a way different from how you're expecting. It doesn't hurt you and I'm sure you'll pick up quite quickly when people are using it as a direct quote and when they are (sometimes humorously) paraphrasing after you've been here a while.

Name: Anonymous 2016-01-15 7:55

>>297
People should form new syntax to note different things. Quotes are for quoting. Hashtags are for tagging. Maybe if you want to paraphrase, you can use the non-quote syntax <

Name: Anonymous 2016-01-17 1:00

>>298
Pound signs are for pounding, actually.

Regards,
The Pounder

Name: Anonymous 2016-01-20 0:24

http://suckless.org/rocks

These people seriously think that zlib is a good library, lol!

Name: Anonymous 2016-01-20 0:27

>>300
whats wrong with zlib? I've never used it or studied its code and I beleive you just wondering what's bad about it?

Name: Anonymous 2016-01-20 0:59

>>301
It's a big pile of shit that encourages shitting your code. Similar to libpng, see http://bbs.progrider.org/prog/read/1409183786

Name: Anonymous 2016-02-15 13:35

>>64
ed, getconf, install, od and pathchk are implemented.
The missing tools.

at
awk
bc
diff
patch
stty

Name: Anonymous 2016-02-15 14:23

>>303
don't forget dc. UNIX without dc is just not that good.

Name: Anonymous 2016-02-15 14:37

I can't believe they are rolling their own ``lightweight'' (read: incomplete and untested) bignum lib instead of using libtommath, which is simple enough (considering what a bignum lib entails).
Suckless just makes no sense sometimes.

They use webkit on their web-browser, but can't use libtommath for their dc/bc because it isn't ``lightweight'' enough? Get your shit together and stop the NIH syndrome.

Name: Anonymous 2016-02-15 15:49

What is the point of bio? Why not just use FILE?

Name: Anonymous 2016-02-15 20:03

>>305
source?

Name: Anonymous 2016-02-15 20:28

>>307
his dad works at suckless

Name: Anonymous 2016-02-15 22:21

>>307
http://lists.suckless.org/dev/1512/27874.html
Suckless bignum will be just a toy.
If you want to actually do something useful you'll have to use libtommath anyway.

Name: Anonymous 2016-02-15 22:44

>>309
libtommath
Except that it's shit.

Name: Anonymous 2016-02-16 0:36

>>309
I think you actually mean gmp

Name: Anonymous 2016-02-16 8:00

>>311
Did you need gmp to check your dubs?

Name: Anonymous 2016-02-16 10:28

>>309
<reads linked post>

That dick is a blight on computing and needs to kill himself. Such fuckers enrage me to no end.

Name: Anonymous 2016-02-17 11:10

>>313
You are angry at a man who admits that his design is not intended for perfection?

Name: Anonymous 2016-02-18 0:50

>>314
It has nothing to do with perfection. It has to do with usefulness, especially as he's releasing code under the hubris that his philosophy is better than the others. There's zero point to him writing shit like this, and less than zero point to him claiming that the way he does things is better.

Name: Anonymous 2016-10-30 18:06

>>35
*whom

Name: Anonymous 2016-10-31 18:43

316

comes back months later to correct a typo.
bravo.

Name: Anonymous 2016-10-31 22:01

suckless
unix
pick one

Name: Anonymous 2016-11-01 4:27

>>318
Explain.

Name: Anonymous 2016-11-01 5:38

>>319
Unix sucks

Name: Anonymous 2017-06-17 1:16

>>166
ahahahahaha
This image will never stop being funny!

Name: Anonymous 2017-06-17 1:56

>>321
Get fucked.
That is a funny image though.

Name: Anonymous 2017-06-17 5:05

Suckless is the religion of turdware.

Don't change these.
Name: Email:
Entire Thread Thread List