thoughts

September sixteenth

Today I was thinking about C declaration syntax, and I remembered that it can look fairly silly sometimes!

read more / close

C declaration syntax nonsense

Everyone knows how a declaration looks in C! You write the type, and then the name of the thing being declared.

int my_int;

Right? Well, it’s a bit more complicated than that. The actual syntax is to write something that resembles an expression, and then you write the type that this expression would have to its left.

But what does that actually mean? Well, think about some C expression. Maybe you take the index of an array, then dereferrence that as a pointer, and finally you call it as a function.

(*(foo[4]))()

What is the type of that expression? Well, it depends on how foo is declared, right? So how would you declare such a variable? Well, turns out you have your answer right there! You just write that expression right then and there, alongside the type that this expression would have.

int (*(foo[4]))();

Here, we have a variable foo of type “array of 4 pointers to functions returning int”.

There are some more wrinkles to that. E.g. When you “convert” from an expression to a declaration, the array index becomes the size of the array. The arguments of a function become parameter declarations. Only a limited number of expressions can be converted this way. But the main take away is: it roughly keeps the shape of the expression.


This might not be news to you. But here is a silly question: How weird can these kinds of declarations become? And what happens when we try to convert some expressions in a way that is unexpected? Can we find some edge cases?

Let’s see. Can we declare an argument as an array? Well, turns out the answer is “no”, but the code doesn’t actually give an error.

int foo(char a[2]);

What happens is that whenever you have a parameter declared as an “array of T, it will implicitly be converted to a “pointer to T” for any type T (and the size will be silently dropped). So the parameter’s type is actually “pointer to char

int foo(char *a); /* same as above */

Hmm, but what happens if we make it a multidimensional array?

int foo(char a[4][4]);

Well, in C, “multidimentional arrays” are really just arrays of arrays. So does this become “pointer to pointer to char”? Well, no. The implicit conversion to pointer only happens at the “outermost layer” of the type. So this really just becomes a “pointer to array with 4 elements of type char”.

int foo(char (*a)[4]); /* same as above */
int foo(char **a); /* NOT same as above */

(Note that sometimes people will use “pointer to array” as a way to declare C99 VLAs on the heap. It is a neat trick!)

Now, can we declare a parameter as a function? Well, the answer is also “no”. But it isn’t as well known that it will also not give you an error! Well, turns out that parameters with a function type will be implicitly converted to “pointer to function”.

int foo(void f(void));
int foo(void (*f)(void)); /* same as above */

Note that these implicit conversions (of arrays and functions) will happen for effectively all parameters, even those of nested function types.

But wait, can we declare a function that returns an array? Or a function that returns a function? Well, still “no”, but this time we will actually get an error about it.

int foo(void)(void); /* error: function cannot return a function */
int foo(void)[4]; /* error: function cannot return an array */

We can, however, of course, declare a function that returns a pointer to an array or function, though!

int (*foo(void))(void);
int (*foo(void))[4];

You can declare a pointer to any type at all in C, and the way you use pointer types is effectively not retricted in any way (compared to function and array types, which cannot be the type of parameters nor the return type of functions)

As a little bonus question, try to see if you can read the type of this declaration:

int (*foo(int (*foo(char bar[4]))[4]))(int (*foo(char bar[4]))[4]);

There are some other edge cases, like “arrays of functions”. Can you figure out more? What happens when you try to declare a struct field as a function?

August twenty‐eighth

Today, I decided to move my old stories from my legacy Neocities website to here. I’ll probably sunset that website soon in some way or another.

August eighteenth

I had another small thought about Ryouna.

read vignette / close

Ryouna’s love marks

During an especially intense session, her bruises became so deep that they would eventually become scars. She likes to think of her scars as “love marks”. Every time she looks at them, she is reminded of when they were formed. Those are special memories to her, and she holds them fondly.

August seventeenth

I had a small piece of thought about Ryouna.

read vignette / close

Ryouna’s suffering

After being thrashed to the point of torture, to say she was agonising would be an understatement to her suffering. Groundbound, she could barely even move after having undergone so much abuse. Still, she used whatever energy she had left to mutter a final wishful plea before fainting — “hurt me more”.

May sixteenth

I decided to reorganise and redesign this website today. I hope it looks somewhat better, at least!

2023

December 27

Earlier today, I was imagining Ryoubi tying and gagging me then insulting me! Ryouna was tagging along, but she seemed just aroused as always.

read story / close

Ryoubi’s insults

After blindfolding you, gagging you and tying your hands together behind your back as well as your knees and ankles, you could only hear Ryoubi’s commanding voice.

“Ryouna, turn on the lights now.” And Ryouna was happy to oblige. Not that you could see the light turning on with your blindfold, but you heard the switch at least.

“Okay, let’s see what we have here…” Ryoubi said as she looked to you. “Heh, what a loser. You know this is pathetic right? To fantasise about us.”

“I love when people fantasise about me!” Ryouna interrupted. “It always makes me feel so excited!”

“We’re not real.” Ryoubi continued “You’re so worthless you can’t even find a real partner, huh?” Your face started to redden a bit.

“No‐one loves you, you know that, right? I mean, of course you do, why else would you be reading this?”

Ryouna interrupted again. “I love you! I love how you think about me when you’re not feeling good. I love the things you make me go through!”

“Ugh, this is so stupid, you’re such a moron. No‐one will ever love you.” Ryoubi was assertive.

“Are you enjoying this? Being told how pathetic you are? That’s why no‐one will ever love you. You’re such a loser.”

“There is nothing wrong with fantasising about us.” Ryouna assured you. “You like it, right? It makes you feel good! That’s all that matters.”

Ryoubi continued “You’re worthless, no‐one cares about you, and all you can do to cope is to fantasise about us. Go die or something. Stop being such a disgrace.”

December first

programming is art!

read more / close

programming is art

A lot of people seem to have this impression that programming is this utilitarian and calculistic endeavor, but that is not the whole truth!

Let’s take a look at st. It’s a simple terminal emulator made by suckless. It might seem utilitarian, but if you look more carefully, you’ll see that the reality is different. It’s not particularly special, it doesn’t really stand out, it doesn’t have many features, some might even call it half‐baked.

But let’s try to look into why it was made. From the suckless website, in my own words, st was made out of a disdain for complexity in how software is oftentimes made. It was created, alongside most suckless programs, to show that simple software can also be effective and allow people to be productive. It was created to show that someone doesn’t need hundreds of features to get something that works well.

It really isn’t a utilitarian goal at all! They didn’t create st because they were in need of a terminal emulator, many existed before it. They didn’t create it because they needed a specific feature from a terminal emulator, as st has fewer features than most others. They created it because they believe it is better. They believe software is too complex, and they want to change that.

That is not a utilitarian goal, it is a principle. st was created to allow for them to express their beliefs, their feelings of dissatisfaction with the status quo. st is art. Or maybe, if you aren’t as willing to claim that so strongly, you should at least accept it is a form of expressing their beliefs.

Of course, I bring up st and suckless, and maybe you ultimately disagree with them (which is fine), but that is not only true of that specific case. If you look at the GNU Hurd, for example, people work on it out of passion. They feel convicted about it, maybe because they believe it can be useful, but maybe because they believe it deserves it for some other reason.

There are other factors, of course, but if you look at free software, oftentimes the ones that are driven by conviction are the ones that tend to last longer and be more successful. Not “successful” in that they are the most popular, but that they are able to achieve their goals and strive, even if within a niche. The ones that are created not because the authors need something, but because they believe in something. Those are the ones that end up being cared for the most by their authors and community, and worked on for longer.

st, GNU, Serenity OS, Lichess, Neocities, etc. The list goes on, of course! (Feel free to mentally insert your favorite project here.)

Software isn’t always created as a means to an end, it is created out of passion. It is created because people want to change the world. Software is art.

September sixth

Vore is the most underrated fetish, and I kinda hate that. It is really nice and deserves more care!

August twenty‐seventh

I feel like the free software principles defended by GNU are very important, but they don’t always know how to word them well.

read more / close

Why is it Important to Defend Free Software?

I understand the position of GNU regarding free software, and I agree with it, but I think it’s not quite worded in a way that’s compelling or easily understandable. You’ll find GNU articles that talk about “ethics” and “justice” without explaining tersely how they are meant to be associated with free software, nor about how proprietary software disrespects it.

The way I’d word it is that the only reasons someone has to make their software proprietary (rather than free) are inherently selfish. People make their programs proprietary because they want to benefit themselves in some way. Depending on how popular the software is, this can often come at the cost of its users. Because benefitting the users is not the goal (but rather one of the means), when it doesn’t benefit the authors of the program (which is the goal), the users are disrespected and detrimented as deemed necessary.

With free software, there is a lot of emphasis put on creating things for the benefit of the community. In fact, that is effectively the point of the entire philosophy! When people defend free software, they are defending the creation of software for the benefit of its community of users.

When people create software (or any kind of work, really), they should have in mind the benefit of others first, and their own benefit second. The goal should be to create something people can use and benefit from. Things such as earning money and becoming popular, while important, should be seen as a consequence of creating things that people find valuable and useful.

This is important because using the trust of your users as a means to benefit yourself is inherently malicious. And authors of proprietary software will very often do things that go against the benefit of users for their own sake. This is not only speculation, it’s easily observable in various popular proprietary programs.

The reason “open source” doesn’t solve any of this is because it doesn’t address that issue in any way. Like “free software”, it also talks about making the source code publicly available, but the reason it provides for it is that it is beneficial to yourself. So it’s not about making the programs for the benefit of others, it’s about making their source available publicly for your own benefit.

The problem with proprietary software is not only that it’s made at the detriment of users, but most importantly what causes that detriment. Which is the malicious mentality of using people (and their trust) for your own benefit. “Open source” doesn’t address that, and in fact accepts and endorses it. Instead of condemning that kind of mentality, it frames “making the source code publicly available” as another way to benefit yourself.

This is bad, because as soon as it making the source code available publicly stops being beneficial, people will go out of their way to harm users and prevent them from doing anything about it (by making the software proprietary). And even if that doesn’t happen, people might still be led to detriment the users in some other way if it is beneficial for them.

Conclusion: Free software is important because it fights against the malicious mentality of using the trust of others for your own benefit. “Open source” doesn’t, and instead promotes making your source code available publicly for your own benefit too, which is still malicious.

June twenty‐fifth

Today, I decided to start writing a story about a world where unlawful scientific experiments allow for cat girls to be genetically created for the profit of corporations.

read story / close

Genetically Failed Cat Girl Experiments

As the field of biotechnology quickly advanced with new discoveries in the last few decades, the thought of genetically enhancing the human body started to feel increasingly less like a mere fantasy. This was illegal, of course, but to some corporations, this was nothing more than meaningless formality, and law enforcement was loose. People had always talked about how they want to have a pet cat girl, but until the last century, it had always been regarded as just a joke. As people realised the potential for profit from the idea, they begun to set up heartless experiments to create something marketable.

Cheap scientists were hired to perform experiment after experiment, most of them ended up as failures with something uncanny or otherwise barely alive. As the various experiments continued to progress over the months, eventually they started to see more marketable results. The objective was to create beings that could be had as pets, but for certain batches, they were too humanely aware.

These intelligent creations were initially locked together into a room next to the laboratory, they could not escape to tell others about their experience. Test 108 was one of the first five experiments to be locked on this small room, but as more and more such failures were concocted, they were also sent to that same room. They befriended each other, but most of them were too fragile and ended up dying after only a few weeks or at most a few months. 108 was the only one that managed to live long enough to see dozens of her friends pass away.


Sometimes, experiments would be sent to the room that would be able to have a more longstanding life like 108, but she was by far the oldest one there. Among them, she was specially fond of Test 108-81-1 and Test 108-70.

Despite her grim experiences, due to how she was created, 108 was naturally cheerful and lighthearted. She knew the fate of most of her roommates, so she tried her best to make sure they could enjoy their time as much as possible. Most of them were not as positive, but some of them would play along with her, which is something she always appreciated. 108-81-1 and 108-70 would tag along and help her cheer their ephemeral friends too, which is why she bonded with them the most.

Just a few months after the arrival of 108-81-1 and 108-70, the leaders of the corporation behind their creation decided it was dangerous to keep those experiments alive, in case they managed to find a way to escape and tell other people about what was happening within their facilities. Overhearing their decision, the experiments quickly begun feeling uneasy. 108-70, which was the most daring among them, decided to speak up from within the room, but was then quickly taken away by one of the scientists and then audibly taken down. The others decided against speaking up further. They were all shocked by the very sudden turn of events. 108 and 108-81-1 felt completely devastated by the death of their best friend. Despite her usually serious expression, 108-81-1 could not manage to contain her tears. And as much as 108 wanted to console her, she could not quite find the right words to say.

To be continued…

(This story was inspired by a drawing by Lampost.)

April thirtieth

Everyone deserves to be happy.

read more / close

everyone deserves to be happy

Which people deserve to be happy? What can someone do that would unwarrant it?

This is a fairly morally ambiguous question. To me, happiness is a foundational feeling. Not being a religious person, I believe that people ultimately behave to abide to their instincts, either directly or indirectly, and happiness is the way nature found to reward good behavior for people and other animals.

As such, this question has very special implications. It is not formed arbitrarily, it serves as one of the bases for my personal morals. Everyone deserves to be happy, and there is nothing they can do that would revoke that warrant. It is inherent to one’s very existence.

Even people who might have caused others affliction, even if they don’t regret it nor ever come to regret it, they still have the warrant to be happy. Of course, that is not to say that anyone should be able to do anything without consequences, but they will always deserve to have a way to do something to be happy.

The wording is very subtle, but it doesn’t mean no‐one deserves to ever feel unhappy or unwell. There are actions people can take that will rightfully lead to them feeling unwell or hurt, and that is something that ought to happen to anyone. The implication of the assertion is not that everyone deserves to be happy all the time, but rather that everyone deserves to be able to live a happy life.

Likewise, it doesn’t mean that everyone should be able to do anything that would make them feel happy, but rather that they should always have the ability to enact something that makes them happy.

Taking away people’s ability to be happy cannot ever be done morally in my view. As a foundational feeling, happiness is what people strive for during their lives. Taking that away is effectively the same as entirely taking away their reason to continue to live.

Once someone starts to believe they will not ever be able to be happy again, they lose their will to continue to live. No‐one deserves to feel that way — at that point, you might as well disclaim their warrant to live altogether, which I also don’t think should ever be disclaimed.

February eighth

Yesterday, I watched Treasure Planet. It wasn’t as interesting as I had remembered, but it was still a very enjoyable experience.

2022

November nineteenth

Sometimes people use words in misguided ways that can be confusing, and I feel like that’s very unfortunate.

read more / close

terms to avoid in certain contexts

content
“Content” is an exceptionally vague word, it can refer to almost anything. It is just barely more specific than saying “things” or “stuff”. Using it to refer to people’s creative works is injust to the creativity that went into them.
content creator
Similar to the above, “content creator” just means “someone who creates things”, with no regard for the creative value of the things they create nor to the effort they put into it. The most appropriate term to use would be “author” (since they have authorship over their works). But since the word “author” is usually associated specifically with writers, mentioning the kind of work the person creates might be prefered, e.g. “video author”, “streamer”, “podcast host”.
artist/art (regarding specifically drawing)
Drawings are not the only form of art. Other forms of art include, amongst others, painting, creating music, modelling, and perhaps even programming. There is no reason to consider as artists only people who draw. To avoid ambiguity, when refering specifically to people who draw, it is better to say “drawing artist”.
authors (regarding specifically writers)
Like above, authorship is not a term granted only to writers, but to anyone who creates any kind of work. When refering specifically to writers, it is better to just say “writer”.
stealing/theft (regarding copying works)
When you copy or distribute someone’s work and infringe their copyright, you are not stealing anything, you are illegally copying their works. A distinction needs to be made between “taking something you don’t own without permission” and “copying something without permission”, as they refer to entirely different concepts. If you take someone’s physical painting, you stole it from them, but if you post photos of it online without the necessary license, you infringed their copyright (but haven’t stolen anything).
stealing/theft (regarding plagiarism)
Ideas cannot be stolen, as someone can’t take them away from you. If you use someone’s idea without crediting them with the intent of passing them as your own, you have plagiarised their idea, but haven’t stolen anything from them. Stealing and plagiarism have nothing to do with each other.
intellectual property
Unlike actual property, works do not conceptually belong to anyone (unless they are inherently physical), not even to the person who created them. If you create something, you have authorship over it, not necessarily ownership (again, unless it is physical). If e.g. you draw an image using Krita, you do not have ownership over your work, you have authorship over it, and no‐one can take that away from you. It is an abuse of reasoning to try to mix up authorship and ownership.
November eighth

I’ve been using Guix System for nearly two years now, and I feel like it works really well.

read more / close

my expericences with Guix

Guix, inspired by Nix, is (among other things) a package manager made by people from the GNU project, and Guix System is a GNU distribution featuring Guix as its package manager. It is a bit distinctive from other package managers, and in this post, I’ll talk about some of its exceptional features and advantages, as well as general anecdotes about my experiences with it.

One interesting thing that it allows for people to do is to use multiple versions of the same package at the same time. Usually, the way I do it is using guix shell. E.g. you could run guix shell gcc-toolchain@10, and it will download and create an environment with GCC 10 in it that you can then use (without installing the package to your profile). You can of course also install a different version of a package to your profile normally too. guix shell -C also allows you to create a container that has only the specified packages available (and that by default only shares the CWD with your host).

Running guix shell -C -F sets up a container that simulates the FHS (“File‐system Hierarchy Standard”) that is most common in more traditional distributions. This allows you to run binaries (that you e.g. download online) that might expect certain files to be in specific locations in the file system (e.g. libraries in /lib, executables in /bin, etc.)

Something else neat is that you can also use packages from a different version of Guix than the one you have installed! You can use the guix time-machine subcommand to specify a different commit or branch of the Guix repository, and it will download and run the guix command‐line tool from that specific commit (which means you can also use the features only available in those commits). So if there is a package that was removed, or you want something from the unstable “core updates” branch (or a different branch), you can use guix time-machine to gain access to them.

All packages in Guix are source packages (there are no binary packages), but that doesn’t mean you have to build everything from source. There is the concept of “substitutes”, which are prebuilt binaries you can download for packages from a build farm. (When installing a package, it downloads them automatically by default.) The neat thing about this, though, is that you have information about how to build any package from source if you come to need it.

One thing I use is the --with-patch=… option of guix install. It allows me to provide a patch to be applied to the source code of a package before building it. Guix will automatically understand that the substitute server can’t provide the patched package, so it will build it automatically for me. I use this for customizing the st package with a theme and applying other similar miscellaneous patches to it.

Another neat thing that I have used before is the --with-source=… option of guix install. It allows me to provide the URL to a tarball, and it will use that in place of the actual declared source of the package. (Like above, it won’t use substitutes then.) I used that when installing FontForge to try it out. The version in Guix is slightly outdated, so I provided the sources to the latest release, and was able to install the latest version of FontForge. It will automatically detect the version number in the URL and reflect that in the installed package’s version, but that is mostly just for covenience, so that it displays correctly when you want to list your installed packages.

And of course, you can have multiple versions of a single package downloaded on your system (and even installed to your profile), that includes different variants of the same version (e.g. if you use --with-patch or --with-source, or even --with-input).

Note: This post was originally written in August and September, but it was adapted a bit and finally posted in November.

September sixth

Y’know what? I just feel like Ryōna (from Senran Kagura) is really adorable! I want to hug her and spank her, and I’m sure that it’d make her happy! I feel like I should take some time to investigate Peach Ball more carefully, it seems really fun and cute.

August sixth

I’ve been listening to Ken Ashcorp’s “We’re Shameless”, and it almost sounds like it comes straight from a Disney princess movie. If Disney movies were lewd, that is.

August first

Whenever I find a fetish I don’t have, I view it as an opportunity to acquire a new fetish!

June nineteenth

Yesterday, I finally got around watching KurtJMac’s playthrough of FAR: Changing Tides. I remember really enjoying his playthrough of FAR: Lone Sails, so I’m not surprised I have been really enjoying this one too!

June third

A few days ago, I decided to continue playing Degrees of Lewdity. It is an extremely atmospheric game, and I really enjoy it!

June third

Last week, I watched Charlie and the Chocolate Factory again! (It had been several years since I last watched it.) It was very fun and immersive.

May fifth

I have recently continued watching Miss Kobayashi’s Dragon Maid. I had forgotten how comfy that show is.

April fifteenth

This morning, I watched Disney’s Tangled. Nothing short of wonderful. Browsing Disney+, I feel like I should start watching a series.

April tenth

Last night, I watched Turning Red, and it was a really enjoyable film. Sometimes I feel like I should pick films I enjoyed watching and watch them again.

April ninth

I have decided to start this microblog today. I’m not sure how it will go, but I hope to write more in the future.

old stories

August of 2022

A Senran Kagura fanfic where Mirai is having an awful week, but something happens that comforts her.

read vignette / close

Mirai’s awful week

everything was going wrong for mirai. haruka had pranked and ridiculed her, she was recently accused by her friends of something for which she wasn’t the culprit because of some misunderstanding, and the new chapter she released of her story was getting awful reviews for being “too melodramatic” or something. i mean, what could she do? she was feeling awful, so she wrote about how she was feeling, it was only natural.

but after such a frustrating day and tiring week, she finally found some time to rest by watching some videos on her phone. though the first video she happened to see was about busty girls on the pool in bikinis. the sight filled her head with infuriated thoughts. she immediately started to mentally curse busty girls and wish ill upon them.

and then suddenly murasaki appeared, bumping into her by accident, almost knocking her to the ground with her bust. she was about to start yelling angrily at murasaki to outlet her frustrations, but murasaki started to speak before she got a chance to. in her always soft voice, she explained to mirai how important she was to her as a person. she told her she was undergoing a lot of personal problems with her sister and her team, and how the latest chapter mirai had released helped her cope with her issues. she was really happy to have mirai as a friend.

mirai was entirely taken aback by murasaki’s words. she really needed that. after all she had gone through, finally getting a word of sympathy and recognition made her tear up. nearly crying, she apologized for murasaki for all she wanted to say to her. murasaki didn’t fully understand mirai’s apologies, but she tried to be consoling in her reactions. suddenly, mirai gave murasaki a big hug. murasaki was surprised at first, but eventually grew to accept the embrace and hugged mirai back. mirai felt comforted and happy.

April of 2022

A Senran Kagura fanfic where Ryouna (once again) grows giant. But this time, Ryoubi isn’t going to let her go unpunished.

read vignette / close

there is no need

after another (now mundane) adventure of (yet again) snagging one of haruka’s potions and becoming gigantic to everyone else’s dismay, ryouna was finally convinced to take the antidote and return to her normal size.

except that this time, it seems the dose of the antidote was slightly miscalculated, and ryouna ended up much smaller than her normal size.

haruka was quick to apologize and to offer an antidote to the antidote, though she didn’t seem entirely regretful. ryoubi, who was also on the scene, lifted up ryouna, who was around the size of her palm, by gripping on her ankle with her index finger and her thumb.

“no no, there is no need”, ryoubi said. “i think she’ll be fine like this for a while.”

March of 2021

A Senran Kagura fanfic where Ryouna gains a new insulting nickname, and is proud to flaunt it.

read vignette / close

“tits”

ryouna didn’t remember that well how she got that as her nickname. it feels like a really disrespectful nickname to have — “tits”. it seemed silly at first, but now many people she knows call her that.

she vaguely remembers a friend of hers explaining the reasoning behind it. “i call her ‘tits’ because it’s her only significant feature. she really isn’t good for anything else.” thus implicitly considering her to be completely disposable as a person.

ryouna adores the nickname, and accepts it with flare! she feels happy to be called “tits”, as she knows the implications behind it.

March of 2021

A Senran Kagura fanfic where Ryouna and Mirai get along and learn to enjoy each other’s company.

read vignette / close

an unlikely pair

mirai and ryouna didn’t get along so well at first. ryouna’s huge breasts made mirai feel really insecure about hers. ryouna would tease mirai about her breasts, and she didn’t really appreciate it.

but eventually they start to get along better. mirai starts insulting ryouna for her breasts, and ryouna plays along, acting intimidated. mirai feels really happy having someone towards whom to relieve some of her insecurities and to be able to feel superior. even though both of them know they are just playing, they are both happy to be able to make each other happy.

ryouna doesn’t generally like to have her breasts insulted themselves, as she is very proud of their size, so mirai is careful while wording her insults to mention ryouna’s breasts but not imply disrespect for their size. “your breasts are so big, how can you even walk like that?” “how did you even get breasts this big, you cow?” “i bet you can barely even walk with such huge breasts!”

March of 2021

A Senran Kagura fanfic where Ryouna “puts on a show” in public, and is insulted by her audience.

read vignette / close

Ryouna’s audience

ryouna was frustrated that there had been no‐one to watch her in her slingshot bikini at the pool the other day, but she hadn’t given up yet. she started showing off her huge breasts in her skimpy bikini to a large crowd. people were surprised at first, but started to admire the sight more and more, and she quickly gathered a large audience.

people took photos of her, and filmed her, and it made her really aroused. she could hear people talking about how her breasts are so huge, and she enjoyed all the lewd compliments she was getting. she decided to verbalize her feelings. “aaah! there are so many people looking at me and having lewd thoughts! everyone thinks i’m so nice to look at!”

most of her audience wasn’t phased or bothered by their attention slut’s words, but someone decided to express their thoughts to her: “no, you stupid whore. no‐one cares about you, we think your tits are nice. you’re just dumb and pathetic.” those words sent pleasure shivers across ryouna’s entire body. being humiliated and reduced to no more than a fetish tool for strangers was really arousing to her.

March of 2021

A Senran Kagura fanfic where the reader (in first person) tries to help Ryouna abide to Ryoubi’s commands and is punished by Ryoubi for failing.

read vignette / close

litter carriers

i don’t know how ryoubi managed to find a litter, but she promptly commanded me and ryouna to transport her a very long distance in it. i’m at the back of the litter, and ryouna’s at the front. ryoubi keeps establishing new locations and commanding us to continue. eventually i start getting exhausted, and feeling weaker and weaker, but my dedication for ryoubi drives me to use the little energy i have left to continue. i fight as hard as i can against all my instincts telling me that i need to rest, and i keep going at a steady pace, but eventually i very suddenly faint from exhaustion.

when i wake up several hours later, ryoubi calls me pathetic for wasting her time. i was a bit startled yet not fully surprised at her first words after seeing me come conscious. i might have been injured, and could even have died, but that has no significance to her. her only concern was that it was an inconvenience for her.

i’m so dedicated to her that i spend all my energy on contenting her, and she doesn’t care for me at all. i don’t have any value, i’m easily replaceable. i know my place, and so does she, and she exploits that without hesitating, with no regards at all for me.

she probably didn’t even need to go anywhere, she was just using me as a simple tool for recreation. her only intent was to exert her power over me, as she knew i would comply without question just out of sheer dedication.

so it was likely not a big inconvenience for her that i fainted. she didn’t have anything to do or anywhere to be anyway, and was only using me just out of boredom. the whole situation was kinda petty for her, but when i woke up, she felt the need to insult me anyway. whatever minuscule benefit that ridiculing me brought for her was more important to her than my dignity — a reminder that i really don’t have any value.

and yet, i thoroughly relished the entire experience! i’m so dedicated to her that the mere thought of being in her presence is enough to entrance me in joy. so, being able to put all my efforts and energy into trying to content her, and even being spoken to is like my life’s dream. it’s more than i would ever have even dared hope for.

and the only reason that actually took place at all is because she was feeling bored. i’m completely worthless otherwise, and i might as well rot and die for all she cares.

i feel like something i really liked about this experience was her complete disregard for my well being. i eagerly preempt the next time she decides again to abuse me for her own petty purposes, and the thought already feels me with joy.

July of 2020

A Senran Kagura fanfic where Ryouna is able to schedule a shopping date with Haruka, but Haruka has something planned to make their day a bit more memorable.

read story / close

shopping misadventures

ryouna put away her cellphone and shook in place in excitement. she was finally able to schedule to meet up with haruka to go shopping. she had been wanting to go shopping with haruka for several weeks, but haruka had always been busy with something. ryouna felt like haruka was a special friend to her — aside from her sister ryoubi, not many people actually accepted her for who she was, so she was glad to have someone who appreciated her personality.

as soon as she met up with haruka the next day, ryouna gave her a big, soft hug, making sure to stroke her breasts against haruka’s, which both of them enjoyed. haruka was a little surprised at first, but quickly turned appreciative. it had been several days since they had last met in person, so they were both happy to see each other.

on their way to the mall, ryouna caught herself having smiled subconsciously. she took the opportunity to look around and pay attention to the scenery around her. it was a beautiful, clear early afternoon in a pleasant area of the city. haruka seemed to be lost in some kind of idle thought. ryouna held her hand to see how she’d react. haruka snapped out of her thought and asked about it to ryouna, who pretended to not have done it on purpose. they chatted and enjoyed each other’s company the rest of the way.

at the mall, after having enjoyed lunch together at the food court, among other things, they shopped for a couple articles of provocative lingerie that both of them enjoyed wearing, as well as seeing on each other. ryouna ended up deciding to wear one of the sets she bought underneath her outerwear, as she felt it made her comfortable. it was the most expensive set she had purchased — the fabric was noticeably durable and also looked fancy. unfortunately, however, its bra was one or two cup sizes too large for her. it was one of the last sets of that make they had available, and this size was the closest to hers.

ryouna was really enjoying her time together with haruka, and haruka seemed to be too. from store to store, whether buying things, or just looking around, they both felt really tranquil and comforted around each other. ryouna, who occasionally becomes quite agitated, was really calm and collected that time. she was really glad to be able to be spending time with someone that made her so happy.


the sky had just barely started turning orange from the sunset by the time they left the mall to go back home. they were each carrying shopping bags that were almost full. other people would struggle to carry those bags all the way home, but as shinobi, they were barely putting an effort.

as they continued on their way home, they found themselves going through a greensward square with a moderate number of trees. it felt like a nice place to be at, and the sunset made the mood even more pleasant. as it was starting to become late, the square was completely empty.

it was at that time that ryouna started to notice a strange feeling on her chest. it wasn’t like anything she had felt before, yet it was strangely pleasurable. she dismissed it at first, but then the feeling started to become stronger with each step. she tried to discretely scratch her breasts, but it was entirely ineffective. without realizing, she started to scratch them increasingly more frequently, to the point haruka was able to notice.

eventually, as it became stronger, she begun feeling concerned enough to bring it up to haruka. they both sat on a bench on the square so they could more easily make an assessment. haruka didn’t seem too worried to ryouna, as much as she said otherwise.

the feeling kept becoming stronger, and as it did, it made her more pleasured, to the point she could barely keep her conduct. as ryouna absented her mind from her surroundings, haruka was entertained watching as she struggled to avoid moaning. eventually, ryouna caught herself panting, and blushed a bit in joy. she gathered her surroundings once again; the calming environment around her as well as haruka’s comforting expression made her happy.

she started to feel something on her chest again. it was not the same feeling as before — this time, she felt it externally, on her skin. what was happening was immediately clear to her this time: her once large bra was now a strain for her breasts. in fact, it was feeling tighter by the second. she didn’t want for her new underwear top to rip, so she quickly put her hands between her breasts from below her shirt to unhook it. the sudden release of strain was so surprisingly pleasuring that she couldn’t avoid letting out a mild moan.

haruka was entranced as ryouna’s breasts kept growing. she always appreciated ryouna, much like ryouna appreciated her. so she wanted to be able to make sure their shopping date would be memorable for both of them. during their lunch at the mall, she had managed to sneak in some breast growth drug in ryouna’s juice while she was away washing her hands.

as her breasts continued to grow fuller, they started to form a strain on her skin. by this point, they seemed to be almost twice their original size. she finally gave up on holding herself back and started to moan more intensely while squeezing her breasts, which only emphasized the strain on her skin.

eventually, her breast growth started to slow down, and as it did, she also started to tune down the squeezing and moaning. by the time it stopped, she was still panting. her breasts were just shy of thrice their original size. she looked at haruka, who had been just watching her behavior throughout this experience, and blushed from a bit of playful embarassment. they smiled at each other for a couple seconds and appreciated each other’s presence in their own lives. haruka broke the silence by saying something provocative. they kept teasing each other for several minutes more before heading back home.

November of 2019

A Senran Kagura fanfic where Ryouna makes some preparations to meet with Ryoubi again after a while.

read story / close

ryoubi and ryouna’s reencounter

ryouna woke up feeling especially good that day. outside, the mild wind was strong enough to make sound as it passed through the leaves every once in a while. it was just a chilly spring saturday, but it was also a very special day to ryouna: it was the day her sister ryoubi would come back home from a week-long shinobi mission that was assigned to her. she really missed ryoubi, and assumed ryoubi missed her too. their bond was stronger than their sadomasochistic interactions — they truly cared for each other. not everyone is comfortable with their kind of behavior and feelings, much less so actually endorsive and reciprocative of it, so understanding each other was really important for them both.

as ryouna sat up on her bed, she was already mentally preempting her meeting with her sister at the end of the afternoon. after breakfast, she rushed out of hebijo, and went hopping to the closest shopping district, just barely being able to contain her feeling of excitement and anticipation, occasionally letting some of it out in the form of random smiles throughout her path to the district.

while shopping, she chose the lingerie that she felt highlighted her breasts the most, as she thought ryoubi would enjoy it. as much as ryoubi didn’t like big breasts in girls, she didn’t mind ryouna’s, even though she oftentimes acted otherwise. ryouna knew this, and was intentionally choosing that lingerie to provoke her sister, who would probably take the opportunity to talk her breasts down. while at the shopping district, ryouna also got some things she felt would be able to help her and her sister enjoy their time together more effectively, such as a moody lampshade, ropes and a whip, and suggestive outerwear.

after having lunch with the other hebijo elite members when she got home, she went back to her bedroom to prepare for her sister’s arrival. she cleaned and organized her room, tested her lampshade, wore her new underwear, and hid some of her newly-bought apparatus in her closet to surprise her sister. it was a modest effort, but it felt special to her, as she did it for her sister. ryouna knew ryoubi would come home exhausted from her mission, and so she wanted for ryoubi to be able to have someone to let her feelings out on, as she knew both of them would enjoy it.

now ryouna caught herself in a waiting game. it was still just around 1 p.m., whereas her sister would arrive around 6 p.m. it’s not like she was an impatient person, but this particular circumstance got her to sigh in disappointment. she put on some clothes atop her lingerie, and started to walk around the school to pass the time. she would visit the same rooms multiple times, including her own bedroom. it seemed like several hours had passed since she started, but in reality, just one hour had barely gone by. eventually, she caught herself in her own bedroom, lying in her bed in frustration. she was really tired since she hadn’t slept that well last night, as she was anxious for ryoubi’s arrival. as she started to imagine her sister coming back and finally interacting with her after so long, the softness in her heart made her fall asleep.

when she woke up, she looked in her clock, and it was already 6 p.m. ryoubi hadn’t arrived yet, but was likely about to, so she felt happy and immediately aroused herself. she didn’t get up, though, she just lazed around in her bed for a while. eventually, as she started to notice it was already 6:30 p.m., she got up to take away her outerwear and turn her lampshade on. she took out her whip and put it in her nightstand for easy access. it was really good timing because it was at that time she heard ryoubi’s voice outside her room. she heard her talking with the others, and she seemed very angry; she was probably worn out from her mission. as ryouna heard ryoubi approach her bedroom, she felt content, as she knew in her heart that her sister would enjoy all the preparations she spent time setting up for them, and would be as happy as her to meet again.

works

Mirai’s Miscellaneous Misadventures nanolight draw & share moonfish 2048 clone drawings qtly sked greg

likes

NetBSD Xfce Guix JPEG XL URL Spec Neocities Deno bun GIMP xcc Ualyze Agda Liquid War Lichess TLSe CodeJar SXML CommonMark micromark st Firefox