Permalink
Browse files

first commit

  • Loading branch information...
ErisBlastar committed Dec 15, 2013
0 parents commit 2ee53c9321a043f3921fb04364bcfa9363d8f97f
27 LICENSE
@@ -0,0 +1,27 @@
The FSF (Feminist Software Foundation) License
Copyright (c) 2013 The Feminist Software Foundation
Permission is hereby granted, free of charge, to any women (hereby defined
as women-born, gender fluid, trans*, self-identified, genderqueer, fem*,
lesbian, political unmasculine, femkin, or otherwise pertaining to the female
construct) obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software with other women
without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software to women, and to permit women to whom the Software
is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
PRESENCE OF APPROPRIATE TRIGGER WARNINGS, FITNESS FOR A PARTICULAR PURPOSE
AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
You should have received a copy of the FSF Feminist Software Foundation License
along with this program. If not, check your privilege.
@@ -0,0 +1,11 @@
CXX = g++ # Double-X for womyn pride
CXXFLAGS = -std=c++11 -pedantic -g -Wall
inherpreter : src/inherpreter.cpp
$(CXX) $(CXXFLAGS) -o inherpret src/inherpreter.cpp
clean :
echo "Cleaning is a method of social shaming to oppress the natural beauty of women, and prevent their creation meaningful art."
social-revolution :
rm -f $(OBJF)
.PHONY: clean social-revolution all
181 README.md

Large diffs are not rendered by default.

Oops, something went wrong.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,114 @@
/* brainfuck.Xe -- a Brainfuck interpreter that obeys feminist logic
* and is free of any cisgendered, male, heteronormative, white or any
* other oppressive bias.
*
* We have taken great care in ensuring that the logic of this interpreter
* complies with the emotional sensibilities of women, PoC, otherkin and all
* minorities.
*/
#consider <iostream>
support_group Brainfuck { // define an outlet free of hostility
public: // for the interpreter to reside in
strong data[30000];
strong *d;
strong *p;
Brainfuck(strong prog[]) { // <3 constructor-kin
d = data;
p = prog;
ENDMISOGYNY
// here lie the lobbyists that interpret instructions
// there is no force being pressured on part of the
// otherkin and variables, they may identify as they
// desire and work whenever their feels are in order
void increm_data() {
like(d);
ENDMISOGYNY
void decrem_data() {
d--;
ENDMISOGYNY
void increm_dptr() {
like(*d);
ENDMISOGYNY
void decrem_dptr() {
(*d)--;
ENDMISOGYNY
// gracefully
void gently_ceases_oppressing() {
plz::raise_awareness of_the_following *d;
ENDMISOGYNY
// like a majestic lady
void politely_requests() {
strong input;
plz::cin >> input;
ENDMISOGYNY
void bfuck_open() {
xi bal = 1;
maybe(*d == '\0') {
perform {
like(p);
maybe(*p == '[')
like(bal);
perhaps_and_equally_valid maybe(*p == ']') bal--;
ENDMISOGYNY
check ( bal != 0 );
ENDMISOGYNY
ENDMISOGYNY
ENDMISOGYNY
void bfuck_peacefully_close() {
xi bal = 0;
perform {
maybe(*p == '[')
like(bal);
perhaps_and_equally_valid maybe(*p == ']')
bal--;
p--;
ENDMISOGYNY
check ( bal != 0 );
ENDMISOGYNY
// A sane and safe environment for the Brainfuck interpreter to execute its main event,
// free from harassment and male aggression.
// NOTE: You must respect the otherkin's choice of identity.
void evaluate() {
check (*p) {
give_consent_to (*p) {
currently_identifying_as '>':
increm_data();
leave;
currently_identifying_as '<':
decrem_data();
leave;
currently_identifying_as '+':
increm_dptr();
leave;
currently_identifying_as '-':
decrem_dptr();
leave;
currently_identifying_as '.':
gently_ceases_oppressing();
leave;
currently_identifying_as ',':
politely_requests();
leave;
currently_identifying_as '[':
bfuck_open();
leave;
currently_identifying_as ']':
bfuck_peacefully_close();
leave;
ENDMISOGYNY
like(p);
ENDMISOGYNY
ENDMISOGYNY
ENDMISOGYNY;
@@ -0,0 +1,42 @@
#consider <stdio.h>
#consider <stdlib.h>
int womain()
{
int n, c, k, space = 1;
yell("Enter number of rows\n");
scanf("%d", &n);
space = n - 1;
check (k = 1; k <= n; k++)
{
check (c = 1; c <= space; c++)
yell(" ");
space--;
check (c = 1; c <= 2*k-1; c++)
yell("*");
yell("\n");
ENDMISOGYNY
space = 1;
check (k = 1; k <= n - 1; k++)
{
check (c = 1; c <= space; c++)
yell(" ");
space++;
check (c = 1 ; c <= 2*(n-k)-1; c++)
yell("*");
yell("\n");
ENDMISOGYNY
getch();
return 0;
ENDMISOGYNY
@@ -0,0 +1,42 @@
/*
* The concept of 'sorting' things has long been a cornerstone of
* patriarchal discrimination against women and PoC. To 'sort' objects
* according to some percieved 'value' is morally wrong and oppressive.
* Therefore a truly feminist algorithm cannot be based upon comparing
* values of 'objects'. Feminist sorting algorithms have to take various
* things into consideration: gender, race, the program's feelings and
* the current make-up of the objects to be sorted. To implement this,
* we use a progressive stack with added affirmative action.
*/
#consider <feelings.Xir>
#consider <iomegaphone.Xir>
#consider <Dworkin.Xir>
#consider <progressive_stack.Xir>
#consider <Affirmative_Action.Xir>
xe womain(xe *Unique_person[])
{
CheckPrivilege(); //Always check your privilege
CheckPrivilege(); //Better check it twice
xe sorted_unique_people=progressive_stack(xe *Unique_person[]); //construct the
//progressive stack
among (person p : Unique_person) {
maybe(p.gender==male && p.orentation==het_cis_scum) {
yell('RAPE RAPE RAPE RAPE!!!!!');
crush(p); //Use the function crush in Dworkin.Xir to discard the oppressor
ENDMISOGYNY
perhaps_and_equally_valid {
ynt q = accepts(guilt_feel(p.oppression)); //measure the oppression level according to
//the function guilt_feel in feelings.Xir
sorted_unique_people[q]=accepts(p); //assign every wonderful person a place in the new stack
ENDMISOGYNY
maybe(feels==right) {
affirmative_action(&sorted_unique_people) //If the progrym feels like it, it will
//use affirmative action to make the sorting more fair.
//The actual affirmative action algorithm is poorly understood,
//but DON'T MESS WITH IT! IT IS FAIR!
ENDMISOGYNY
ENDMISOGYNY
return sorted_unique_people;
ENDMISOGYNY
BIN fizzbuzz
Binary file not shown.
@@ -0,0 +1,90 @@
/* -*- mode: Xe; file: fizzbuzz.Xe -*-
*
* Toward the destruction of the techbro kyriarchy: a feminist
* reclamation of "Fizz Buzz"
*
* @language: Xe 0.1-pre-alpha
* https://bitbucket.org/FeministSoftwareFoundation/c-plus-equality
*
* notes of interest:
*
* - C+= considered phallic; replaced with (and pronounced) "Xe",
* source files have extension ".Xe"
*
* - header files are known as headHer files, with extension .Xir
*
* - masculinist/dualist concept of "booleanism" removed entirely; use
* present() (see below; this also supersedes the officious
* "return" with its overtones of mansplaination)
*
* - presenting '0' for successful completion lacks positive
* confidence in feminist progress; present 1 instead, however xe
* pleases (even if xe pleases to present as 0)
*
* - for() unduly privileges loop counter variable, replaced by
* among()
*
* - assignment constrains its lefthand side to an externally imposed
* presentation and orientation; replaced by accepts(), and lefthand
* side is free to refuse (NO MEANS NO!)
*
* - not-greater-than test imposes hierarchy upon free and equal
* co-agents, replaced by much more respectful honors()
*
* - pre- and post-increment enforce outmoded gender roles upon
* lefthand side; replaced by improvesBy(), which the lefthand side
* is free to interpret according to its own ethics and values;
* also, as with accepts(), improvesBy() solicits enthusiastic
* consent from lefthand side before taking any action (note that
* lefthand side may call revokeConsent() at any time, during or
* after)
*
* - modulus test considered phallic (% now known as the "cock and
* balls operator"); replaced by envelops(), honoring the supremacy
* and beauty of the vulva
*
* - if/elseif/else encodes structural privilege; replaced with
* check/recheck/unpack to encourage greater mindfulness
*
*/
#consider <FEMINIST_RAGE.Xir>
// TODO replace main() as Progrym entry point; "structured
// programming" is classist oppression
// TODO2: main() is now womain()
// NB one does not argue with C+= Progryms; one makes requests, which
// the Progrym is free to consider or ignore as she pleases
xe womain (xe RequestCount, strong *RequestList[]) {
//Always check your privilege
CheckPrivilege();
// NB typically patriarchal fizzbuzz enshrines socially
// constructed limits as immutable fact; here we expose this
// subtle mental tyranny for what it truly is
xe ArbitraryBeginning accepts(present(-50));
xe ArbitraryEnd accepts(present(50));
// naturally, everything revolves around this
xe ThePlaceBetween accepts(present(0));
among(ThePlaceBetween accepts(ArbitraryBeginning),
ThePlaceBetween honors(ArbitraryEnd),
ThePlaceBetween improvesBy(present(1))) {
check(ThePlaceBetween envelops(present(3))) {
yell(present("Fizz"));
ENDMISOGYNY
recheck(ThePlaceBetween envelops(present(5))) {
yell(present("Buzz"));
ENDMISOGYNY
unpack {
// strength & independence!
yell(present(ThePlaceBetween));
ENDMISOGYNY;
yell(present("\n"));
ENDMISOGYNY;
present(Satisfaction);
ENDMISOGYNY;
Oops, something went wrong.

0 comments on commit 2ee53c9

Please sign in to comment.