master
Miloslav Ciz 5 months ago
parent d6459bcdb0
commit b9e84b9011

@ -49,7 +49,7 @@ Here is a list of some acronyms:
- **[BTFO](btfo.md)** (blown the fuck out)
- **[CAD](cad.md)** (computer aided design)
- **[CAPTCHA](captcha.md)** (completely automated public Turing test to tell computers and humans apart)
- **[CC](cc.md)** (creative commons)
- **[CC](cc.md)** (creative commons, C compiler)
- **[CC0](cc0.md)** (creative commons zero)
- **[CD](cd.md)** (compact disc, change directory)
- **[CEO](ceo.md)** (chief executive officer)
@ -130,6 +130,7 @@ Here is a list of some acronyms:
- **[GIMP](gimp.md)** (GNU image manipulation program)
- **[GLUT](glut.md)** (OpenGL utility toolkit)
- **[GNOME](gnome.md)** (GNU network object model environment)
- **[GNG](gng.md)** (GNG's Not GNU)
- **[GNU](gnu.md)** (GNU's Not Unix)
- **[GOAT](goat.md)** (greatest of all time)
- **[GPG](gpg.md)** (GNU privacy guard)

@ -4,4 +4,6 @@ Fight culture is the [harmful](harmful.md), mostly western mindset of seeing any
[We](lrs.md), of course, see fight culture as highly undesirable for a [good society](less_retarded_society.md) as that needs to be based on peace, [love](love.md) and [collaboration](collaboration.md), not [competition](competition.md). For this reasons we never say we "fight" anything, we rather aim for goals, look for solutions, educate and sometimes reject, refuse and oppose bad concepts (e.g. fight culture itself).
Capitalist often say that "life is a fight". We say life is what you make it, and if for your life is a fight, it merely says you desire fight. We do not.
Capitalist often say that "life is a fight". We say life is what you make it, and if for your life is a fight, it merely says you desire fight. We do not.
**How to stop engaging in fight culture?** Adopt [defeatism](defeatism.md). That frees you, accepting loss makes you no longer constrained to unethical behavior justified by the necessity to win, the capitalist argument "you have to do X or else you lose" suddenly stops being valid and you are free to behave morally, you no longer have to engage in a lot of [bullshit](bullshit.md). [Capitalist](capitalism.md) culture is extremely hostile to defeatism because it knows that's the way out of it, a defeatist individual no longer works for capitalism, therefore capitalist propaganda spreads hatred of defeatism, and in extreme situations (e.g. war) makes it officially a crime! That's how you know it's the correct thing to do.

@ -1,6 +1,8 @@
# Function
Function is a very basic term in [mathematics](math.md) and [programming](programming.md) with a slightly different meanings in each: mathematical function maps numbers to other numbers, a function in programming is a subprogram to which we divide a bigger program. Well, that's pretty simplified but those are the basic ideas. A more detailed explanation will follow.
Function is a very basic term in [mathematics](math.md) and [programming](programming.md) with a slightly different meanings in each, also depending on exact context: mathematical function basically maps [numbers](number.md) to other numbers, a function in programming is similar but is rather seen as a subprogram to which we divide a bigger program. Well, that's pretty simplified but those are the very rough ideas. A more detailed explanation will follow.
Yet another attempt at quick summary: imagine function as a tiny box. In mathematics you throw numbers (or similar object, for example [sets](set.md)) to the box and it spits out other numbers (or "objects"); the number that falls out always only depends on the number you throw in. So the box basically just transforms numbers into other numbers. In programming a function is similar, it is also a box to which you throw numbers and can behave like the mathematical function, but the limitations are relaxed so the box can also do additional things when you throw a number in it, it may for example light up a light bulb; it may also remember things and sometimes spit out a different number when you throw in the same number twice.
## Mathematical Functions
@ -10,8 +12,6 @@ In mathematics functions can be defined and viewed from different angles, but it
Here we call the function *f* and say it takes one [parameter](parameter.md) (the "input number") called *x*. The "output number" is defined by the right side of the equation, *x / 2*, i.e. the number output by the function will be half of the parameter (*x*). The domain of this function (the set of all possible numbers that can be taken as input) is the set of [real numbers](real_number.md) and the codomain is also the set of real numbers. This equation assigns each real number *x* another real number *x / 2*, therefore it is a function.
{ I always imagined functions as kind of little boxes into which we throw a number and another number falls out. ~drummyfish }
Now consider a function *f2(x) = 1 - 1 / x*. Note that in this case the domain is the set of real numbers minus [zero](zero.md); the function can't take zero as an input because we can't divide by zero. The codomain is the set of real numbers minus one because we can't ever get one as a result.
Another common example of a function is the [sine](sin.md) function that we write as *sin(x)*. It can be defined in several ways, commonly e.g. as follows: considering a [right triangle](right_triangle.md) with one of its angles equal to *x* [radians](radian.md), *sin(x)* is equal to the ratio of the side opposing this angle to the triangle [hypotenuse](hypotenuse.md). For example *sin(pi / 4) = sin(45 degrees) = 1 / sqrt(2) ~= 0.71*. The domain of sine function is again the set of real number but its codomain is only the set of real numbers between -1 and 1 because the ratio of said triangle sides can never be negative or greater than 1, i.e. sine function will never yield a number outside the interval <-1,1>.

@ -2,7 +2,7 @@
{ Though history is usually written by the winners, this one was written by a loser :) Keep in mind there may appear errors, you can send me an email if you find some. ~drummyfish }
This is a brief summary of history of [technology](technology.md) and [computers](computer.md).
This is a brief summary of history of [technology](technology.md) and [computers](computer.md) (and some other things).
The earliest known appearance of technology related to humans is the use of **stone tools** of hominids in Africa some two and a half million years ago. Learning to start and control **fire** was one of the most important advances of earliest humans; this probably happened hundreds of thousands to millions years ago, even before modern humans. Around 8000 BC the **[Agricultural Revolution](agricultural_revolution.md)** happened: this was a disaster -- as humans domesticated animals and plants, they had to abandon the comfortable life of hunters and gatherers and started to suffer greatly from the extremely hard [work](work.md) on their fields (this can be seen e.g. from their bones). This led to the establishment of first cities. Primitive **writing** can be traced to about 7000 BC to China. **Wheel** was another extremely useful technology humans invented, it is not known exactly when or where it appeared, but it might have been some time after 5000 BC -- in Ancient Egypt **The Great Pyramid** was built around 2570 BC still without the knowledge of wheel. Around 4000 BC **history starts with first written records**. Humans learned to smelt and use metals approximately 3300 BC (**Bronze Age**) and 1200 BC (**Iron Age**). **[Abacus](abacus.md)**, one of the simplest devices aiding with computation, was invented roughly around 2500 BC. However people used primitive computation helping tools, such as bone ribs, probably almost from the time they started trading. Babylonians in around 2000 BC were already able to solve some forms of **[quadratic equations](quadratic_equation.md)**.

@ -113,6 +113,7 @@ This is a summary of some main guidelines on how an LRS supporter should behave
- **Do NOT support [pseudoleft](pseudoleft.md) ([LGBT](lgbt.md), [feminism](feminism.md), [Antifa](antifa.md), [soyence](soyence.md) ...)**, don't become [type A fail](fail_ab.md). Of course you should equally reject [rightism](right.md), but that goes without saying.
- **Do NOT engage in [political correctness](political_correctness.md)**. Remember that staying silent often means supporting status quo, so the more deceit you see in society, the more you should try to not stay silent and the more you should try to tell the truth.
- **[Free](freedom.md) yourself from the system** (and generally from as many things as possible) -- similarly to how you free yourself technologically, free yourself also socially, live frugally and minimize your expenses. Stop consuming, stop living in luxury, stop spending money for shit (gyms, sports, clothes, car, streaming services, games, cigarettes, ...), use free things that people throw away and enjoy hobbies that are cheap (programming, reading books, going for walks, playing chess, collecting [rocks](rock.md), ...). **Stop watching news** (it's just brainwashing and distraction, what's really important will get to you anyway), stop engaging in fashion, stop talking to retards and watching tiktok manipulators. You need very little to live, you don't even need internet connection; with good computing you can hack offline and only connect to the internet once in a while on some public wifi to download emails and upload your programs. **Stop using [cellphone](phone.md)** (if you need it e.g. for banking, just use it for banking and don't carry it around with you, don't make it something you need with you). Make yourself self sufficient, prepare for the [collapse](collapase.md). If you can live somewhere in the woods and would enjoy it, go for it.
- **Adopt [defeatism](defeatism.md)**, that stops you from engaging in [fight culture](fight_culture.md) and makes you free to behave morally, you will seize to be the slave of bullshit necessary for winning the capitalist game and you'll no longer be working for [capitalism](capitalism.md).
- **Search for [truth](truth.md)**. You won't find it easily, real truth is always censored and hidden (though often in plain sight), but you can train yourself to spot propaganda and see the red flags. You won't find truth through Google, use different sources, read old books, [encyclopedias](encyclopedia.md) and different points of view (e.g. contrast articles on [Wikipedia](wikipedia.md) with those on [Infogalactic](infogalactic.d)). Learn foreign and old langages such as [Latin](latin.md) so that you can read untranslated and first hand historical accounts. **Question EVERYTHING** (absolutely everything, even this statement). Do not fall into traps such as [pseudoskepticism](pseudoskepticism.md). Train your mind to think critically, avoid [shortcut thinking](shortcut_thinking.md), question your own biased beliefs and wishes.
- **Reject harmful things like [proprietary](proprietary.md) software, [capitalism](capitalism.md), [copyright](copyright.md), [bloat](bloat.md), [work](work.md) etc.** Use and promote the ethical equivalents, i.e. [free software](free_software.md), [free culture](free_culture.md), frugality, [anarchism](anarchism.md) etc.
- **[Don't argue with retards](cant_argue_with_idiot.md)** with the goal of convincing him or winning the argument so that you feel good (the meaning of retard here is not someone with low IQ but rather someone who isn't really open to the ideas or LRS, though these are mostly the same people). It's literally wasted time/energy and it's bad for your mental health, it leads nowhere and achieves nothing. You literally can NOT convince anyone who is not open to being convinced, it is impossible, even if you have 100000 mathematical proofs, real world evidence, literature supporting you and anything you can imagine, you cannot logically convince someone who doesn't know how logic works or someone who simply emotionally isn't ready to change his mind. NO, not even if he's an "intellectual", has PhD and Nobel Prize, if he doesn't wanna see the truth, you cannot help him. As it's been said, trying to argue with an idiot is like trying to win a chess game against a pidgeon -- even if you're the world chess champion, the pidgeon will just shit on the board and think it's won. If you spot a retard, just leave -- don't try to have the last word or anything, even admit him "victory" in the argument and leave him in his world of delusion where he is the unappreciated Einstein, just do not waste an extra second on him, just leave and go do something better. { So many such idiots I have met I can't even count it -- pure stupid peasant aren't even that bad, the wost are the "above averge" intelligence reddit atheists who think they're smart. I literally had such people argue like "you like games therefore competition in society is good because games are part of society therefore society equals competition". Truly I'm not sure if those bastards are just trolling me into suicide or are really so fucking dumb :D ~drummyfish }

@ -2,9 +2,9 @@
Less retarded society (LRS, same [acronym](acronym.md) as [less retarded software](lrs.md)) is a model of ideal society towards which we, the [LRS](lrs.md), want to be moving. Less retarded society is a peaceful, collaborative society based on [love](love.md) of all [life](life.md), which aims for maximum well being of all living beings, a society without violence, [money](money.md), oppression, need for [work](work.md), social [competition](competition.md), poverty, scarcity, criminality, [censorship](censorship.md), [self-interest](self_interest.md), government, police, laws, bullshit, slavery and many other negative phenomena. It equally values all living beings and establishes true social equality in which everyone can pursue his true desires freely -- it is a TRULY [leftist](left_vs_right.md) society, NOT a [pseudoleftist](pseudoleft.md) one. The society works similarly to that described by the [Venus Project](venus_project.md) and various [anarchist](anarchism.md) theories (especially [anarcho pacifist](anpac.md) [communism](communism.md)), but it also takes good things from elsewhere, even various [religions](religion.md) (without itself actually becoming a religion in traditional sense); for example parts of teaching of [Jesus](jesus.md) and [Buddha](buddhism.md).
**How is this different from other ideologies and "life philosophies"?** Well, one principal difference is that LRS doesn't want to [fight](fight_culture.md); nowadays as well as in the past society has always been about conflict, playing a **game** against others (nowadays e.g. market competition, employment competition, media competition, ...) in which some win, some can manage and some lose. Most political parties nowadays just want to change the rules of the game or downright switch to a different kind of game, some want to make the rules "more fair", or to make it favor their represented minority (so called [fascism](fascism.md)), some just want to [hack](hacking.md) the game, some want to [cheat](cheat.md) to win the game easily, some want to play fair but still win (i.e. become "successful"). LRS simply sees any kind of such game as unnecessary, cruel, unethical and harmful in many ways not just to us, but to the whole planet. LRS therefore simply wants to stop the game, not by force but by making everyone see how bad the game is. It says that **competition and conflict must seize to be the basis of society**. There is no value in achieving anything by violence, such a change will soon be reverted by counter revolution, people themselves have to understand what's good and choose it voluntarily. That is one of the reasons why we are [pacifists](pacifism.md) and **reject all violence**, only wanting to promote our ideas by [education](education.md).
**How is this different from other ideologies and "life philosophies"?** Well, one principal difference is that LRS doesn't want to [fight](fight_culture.md), in fact LRS adopts a downright [defeatist](defeatism.md) mindset to not compromise morality by any desire to "win the game"; nowadays as well as in the past society has always been about conflict, playing a **game** against others (nowadays e.g. market competition, employment competition, media competition, ...) in which some win, some can manage and some lose. Most political parties nowadays just want to change the rules of the game or downright switch to a different kind of game, some want to make the rules "more fair", or to make it favor their represented minority (so called [fascism](fascism.md)), some just want to [hack](hacking.md) the game, some want to [cheat](cheat.md) to win the game easily, some want to play fair but still win (i.e. become "successful"). LRS simply sees any kind of such game as unnecessary, cruel, unethical and harmful in many ways not just to us, but to the whole planet. LRS therefore simply wants to stop the game, not by force but by making everyone see how bad the game is. It says that **competition and conflict must seize to be the basis of society**. There is no value in achieving anything by violence, such a change will soon be reverted by counter revolution, people themselves have to understand what's good and choose it voluntarily. That is one of the reasons why we are **[pacifists](pacifism.md)** and **reject all violence**, only wanting to promote our ideas by [education](education.md). We accept we may not achieve our goals and we most certainly won't achieve anything during our lifetime and that gives us the freedom to behave truly morally.
Note that this society is an ideal model, i.e. it can probably not be achieved 100% but it's something that gives us a direction and to which we can **get very close** with enough effort. We create an ideal theoretical model and then try to [approximate](approximation.md) it in reality, which is a [scientific](science.md) approach that is utilized almost everywhere: for example [mathematics](math.md) defines a perfect sphere and such a model is then useful in practice even if we cannot ever create a mathematically perfect sphere in the real physical world -- the mathematical equations of a sphere guide us so that with enough effort we are able to create physical spheres that are pretty close to an ideal sphere. The same can be done with society. This largely refutes the often given argument that *"it's impossible to achieve so we shouldn't try at all"* -- we should try our best and the closer to the ideal we get, the better for us.
Note that less retarded society is an ideal model, i.e. it can probably not be achieved 100% but it's something that gives us a direction and to which we can **get very close** with enough effort. We create an ideal theoretical model and then try to [approximate](approximation.md) it in reality, which is a [scientific](science.md) approach that is utilized almost everywhere: for example [mathematics](math.md) defines a perfect sphere and such a model is then useful in practice even if we cannot ever create a mathematically perfect sphere in the real physical world -- the mathematical equations of a sphere guide us so that with enough effort we are able to create physical spheres that are pretty close to an ideal sphere. The same can be done with society. This largely refutes the often given argument that *"it's impossible to achieve so we shouldn't try at all"* -- we should try our best and the closer to the ideal we get, the better for us.
## Basis: Love Of All Life

@ -2,6 +2,6 @@
*Not to be confused with [communism](communism.md).*
Marxism comprises ideas, theories and ideologies strongly based in works of [Karl Marx](marx.md) (and also Friedrich Engels), roughly aiming for a [revolution](revolution.md) that should end [capitalism](capitalism.dm), replace it with [socialist](socialism.md) society and eventually a truly [communist](communism.md) society. Though the terms Marxism and communism are NOT the same (communism is a general idea with many branches, e.g. [anarcho communism](ancom.md), Christian communism etc.), most common people see them as equivalent, which is unfortunate as communism is a purely [good](good.md) idea while Marxism is mostly a bad way of trying to achieve and sustain communism (the relationship between communism and Marxism may be roughly compared to the relationship between Christianity and Catholicism). Marxism comes with aggressive, revolutionary mindset that has caused great tragedies mainly during the 20th century, see mainly [USSR](ussr.md). Marxism sees itself as a [scientific](science.md) effort, it is studied by intellectuals and lives mainly in written works of Marxists.
Marxism comprises ideas, theories and ideologies strongly based in works of [Karl Marx](marx.md) (and also Friedrich Engels), roughly aiming for a [revolution](revolution.md) that should end [capitalism](capitalism.md), replace it with [socialist](socialism.md) society and eventually a truly [communist](communism.md) society. Though the terms Marxism and communism are NOT the same (communism is a general idea with many branches, e.g. [anarcho communism](ancom.md), Christian communism etc.), most common people see them as equivalent, which is unfortunate as communism is a purely [good](good.md) idea while Marxism is mostly a bad way of trying to achieve and sustain communism (the relationship between communism and Marxism may be roughly compared to the relationship between Christianity and Catholicism). Marxism comes with aggressive, revolutionary mindset that has caused great tragedies mainly during the 20th century, see mainly [USSR](ussr.md). Marxism sees itself as a [scientific](science.md) effort, it is studied by intellectuals and lives mainly in written works of Marxists.
**We, [LRS](lrs.md), are communists but do NOT embrace Marxism!** Though we do agree with Marxists on many things (mostly identifying issues of [capitalism](capitalism.md) and the desire to replace it with some form of communism) and Marxism is still probably better than [capitalism](capitalism.md) (as anything is better than capitalism), we can't ever approve of some inherent traits of Marxism, mainly the following. Marxism is **violent**, aggressive and revolutionary, often highly hostile to [anarchism](anarchism.md) and [pacifism](pacifism.md) (which we highly embrace), wanting to FORCE communism. Marxists promote establishment of temporary **dictatorship** of the proletariat as they see it the only way to ending capitalism. **Marxists are NOT [altruists](altruism.md)**, their desire of communism doesn't come from love of life, they simply see it as a more efficient societal system than capitalism that's a natural and inevitable next step in evolution of society, they see a man as servant of society, they are obsessed with [work](work.md) and see people who don't share their values as undesirable -- these undesirable people are not only capitalists, but also people who don't want to work, religious people or people who refuse to [fight](fight_culture.md) for their society. They say that ends justify the means and will happily utilize means such as [war](war.md), dictatorship, executions, [censorship](censorship.md), cults of personality and propaganda. We cannot ever stand behind this.

@ -8,7 +8,7 @@ In connection to software the word *portable* also has one other meaning used ma
## How To Make Portable Programs
In short: use [abstraction](abstraction.md) to not get tied to any specific platform (separate [frontend](frontend.md) and [backend](backend.md)), [keep it simple](kiss.md), minimize [dependencies](dependency.md) (minimize use of [libraries](library.md) and requiring hardware such as [floating point](float.md) unit or a [GPU](gpu.md), have [fallbacks](fallback.md)), write efficient, [simple](kiss.md) code (lower hardware demands will support more platforms), avoid platform-specific features (don't write in [assembly](assembly.md) as that's specific to each CPU, don't directly use [Linux](linux.md) [syscalls](syscall.md) as these are specific to Linux etc.).
In short: use **[abstraction](abstraction.md)** (only necessarily small amount) to not get tied to any specific platform (separate [frontend](frontend.md) and [backend](backend.md)), **[keep it simple](kiss.md)**, **minimize [dependencies](dependency.md)** (minimize use of [libraries](library.md) and requiring hardware such as [floating point](float.md) unit or a [GPU](gpu.md), have [fallbacks](fallback.md)), write efficient, [simple](kiss.md) code (lower hardware demands will support more platforms), avoid platform-specific features (don't write in [assembly](assembly.md) as that's specific to each CPU, don't directly use [Linux](linux.md) [syscalls](syscall.md) as these are specific to Linux etc.). Also use **[self hosting](self_hosting.md)** (i.e. write your programming language in itself etc.) to make your program self contained and minimize dependencies on anything external.
Remember, portability is about **making it easy for a programmer to take your program and make it run elsewhere**, so portability is kind of a mindset, it is about constantly putting oneself in the shoes of someone else with a very different computer and asking questions such as "how hard will it be to make this work if this library isn't available?". Even things that are supposed or commonly expected to be present on all platforms, such as a file system or a raster screen, may not be present on some computers -- always remember this.
@ -164,3 +164,4 @@ You'll get the SDL version.
A great example of this kind of portable design can be seen e.g. in well written **[compilers](compiler.md)** that separate their architecture into an frontend and backend -- imagine we are writing for example a [C](c.md) compiler. The parser of C syntax can be easily written in a portable way, we simply write functions that work with text, however we find difficulty in asking what [instruction set](isa.md) we will compile to. If we choose one, such as [x86](x86.md), then we will not only write an x86 specific code generator, but also e.g. an x86 specific [optimizer](optimization.md); the part of the compiler that may get so complex that it ends up being bigger than the rest of the code. What if then we also want to support another ISA such as [Arm](arm.md) or [RISC-V](risc_v.md), will we have to rewrite our painstakingly written optimizer for those architectures from scratch? The solution is the same as explained above in regards to I/O: we make an abstraction above the instruction set, here called an [intermediate representation](intermediate_representation.md), usually some [bytecode](bytecode.md), i.e. the compiler first translates C to the abstract bytecode, then we may perform all the complex optimizations on this bytecode, and only then, in the last moment, we relatively simply translate this bytecode to whatever specific instruction set.
Programming languages, operating systems and other "platforms" also usually employ [self hosting](self_hosting.md) to greatly increase portability -- you will most often see a serious programming language written in itself and if not, then at very least e.g. its standard library will be written as such. See also [bootstrapping](bootstrapping.md).

@ -20,19 +20,41 @@ A computer language consists from two main parts:
- **[syntax](syntax.md)**: The grammar rules and words, i.e. how the language "looks", what expressions we are allowed to write in it. Syntax says which words can follow other words, if indentation has to follow some rules, how to insert comments in the source code, what format numbers can be written in, what kinds of names variables can have etc. Syntax is the surface part, it's often considered not as important or hard as semantics (e.g. syntax errors aren't really a big deal as the language processor immediately catches them and we correct them easily), but a good design of syntax is nevertheless still very important because that's what the programmer actually deals with a great amount of time.
- **[semantics](semantics)**: The meaning of what we write, i.e. semantics says what the syntax actually stands for. E.g. when syntax says it is possible to write `a / b`, semantics says this means the mathematical operation of division and furthermore specifies what *a* and *b* can actually be, what happens if *b* is zero etc. Semantics is the deeper part as firstly it is more difficult to define and secondly it gives the language its [features](feature.md), its power to compute, usability, it can make the language robust or prone to errors, it can make it efficient or slow, easy and hard to compile, optimize etc.
## Nice Languages
{ *THIS IS NOT A COMPREHENSIVE LIST, I can only include languages that I am familiar with, please add more* ~drummyfish }
- [Brainfuck](brainfuck.md): However funny and meme this language may look, its simple design is actually pretty beautiful and interpreters are ultra extremely simple to make. It is a GOOD language.
- [C](c.md): The one and only, the go-to language of the [suckless](suckless.md) community and of compiled languages in general, greatly [future-proof](future_proof.md), uncontested in performance and with nice oldschool [meme](meme.md)-free design, our beloved C. It has many flaws, but has stood as the best practically used language, and is also [historically](history.md) most significant.
- [Comun](comun.md): official [LRS](lrs.md) language
- [Scheme](scheme.md): the minimal/elegant member of [Lisp](lisp.md) family of [functional](functional.md) languages
- [Forth](forth.md): beautifully simple stack-based language
- [Lambda calculus](lambda_calculus.md): ultra extremely [minimal](minimalism.md) [mathematical](math.md) [functional](functional.md) language
- [LIL](lil.md): very nice KISS & [suckless](suckless.md) interpreted language
- [Lua](lua.md)
- [Sigma calculus](sigma_calculus): yes or no? seems like yes
## Notable Languages
Here is a table of notable programming languages in chronological order (keep in mind a language usually has several versions/standards/implementations, this is just an overview).
| language | minimalist/good? | since | notes |
| ----------------------- | ---------------- | ----- | ---------------------------------------------------------------------- |
|"[assembly](assembly.md)"| **yes** but... | 1947? | NOT a single language, non-[portable](portability.md) |
|[Fortran](fortran.md) | **kind of** | 1957 | similar to Pascal, compiled, fast, was used by scientists a lot |
| [Lisp](list.md) | **yes** | 1958 | elegant, KISS, functional, many variants (Common Lisp, Closure, ...) |
| [Basic](basic.md) | kind of? | 1964 | mean both for beginners and professionals, probably efficient |
| [Forth](forth.md) | **yes** | 1970 | [stack](stack.md)-based, elegant, very KISS, interpreted and compiled |
| [Pascal](pascal.md) | **kind of** | 1970 | like "educational C", compiled, not so bad actually |
| **[C](c.md)** | **kind of** | 1972 |compiled, fastest, efficient, established, suckless, low-level, #1 lang.|
| [Prolog](prolog.md) | maybe? | 1972 | [logic](logic.md) paradigm, hard to learn/use |
|[Smalltalk](smalltalk.md)| looks like yes? | 1972 | PURE [OOP](oop.md) language, probably not as corrupt as C++/Java/... |
| [C++](cpp.md) | no, bearable | 1982 |bastard child of C, only adds [bloat](bloat.md) ([OOP](oop.md)), "games"|
| [Ada](ada.md) | ??? | 1983 | { No idea about this, sorry. ~drummyfish } |
| Object Pascal | no | 1986 | Pascal with OOP (like what C++ is to C), i.e. only adds bloat |
| Objective-C | probably not | 1986 | kind of C with Smalltalk-style "pure" objects? |
| [Perl](perl.md) | rather not | 1987 | interpreted, focused onstrings, has kinda cult following |
| [Bash](bash.md) | well | 1989 | Unix scripting shell, very ugly syntax, not so elegant but bearable |
|[Haskell](haskell.md) | **kind of** | 1990 | [functional](functional.md), compiled, acceptable |
|[Python](python.md) | NO | 1991 | interpreted, huge bloat, slow, lightweight OOP, artificial obsolescence|
|[Brainfuck](brainfuck.md)| **yes** | 1993 | extremely minimal (8 commands), hard to use, [esolang](esolang.md) |
| [Lua](lua.md) | **kind of** | 1993 | interpreted, mainly for scripting (used a lot in games) |
| [Java](java.md) | NO | 1995 | forced [OOP](oop.md), "platform independent" (bytecode), slow, bloat |
| [JavaScript](js.md) | NO | 1995 | interpreted, the [web](web.md) lang., bloated, classless [OOP](oop.md) |
| [PHP](php.md) | no | 1995 | server-side web lang., OOP |
| [Ruby](ruby.md) | no | 1995 | similar to Python |
| [C#](c_sharp.md) | NO | 2000 | proprietary (yes it is), extremely bad lang. owned by Micro$oft, AVOID |
| [D](d.md) | no | 2001 | some expansion/rework of C++? OOP, generics etcetc. |
| [Rust](rust.md) | NO! lol | 2006 |extremely bad, slow, freedom issues, toxic community, no standard, AVOID|
| [Go](go.md) | **kind of** | 2009 | "successor to C" but not well executed, bearable but rather avoid |
| [LIL](lil.md) | **yes** | 2010? | not known too much but nice, "everything's a string" |
| **[comun](comun.md)** | **yes** | 2022 | "official" [LRS](lrs.md) language, WIP, similar to Forth |
## Interesting Programming Languages
@ -46,4 +68,4 @@ There is a community around so called **[esoteric programming languages](esolang
- [esoteric programming language](esolang.md)
- [constructed language](conlang.md)
- [compiler](compiler.md)
- [compiler](compiler.md)

@ -9,5 +9,7 @@ This is a place for sharing some practical programming tips.
- **[KEEP IT SIMPLE](kiss.md)** and keep it [LRS](lrs.md), do not blindly follow mainstream ways and "workflows" as those are more often than not horrible. For example instead of using some uber bug tracker, you should use a simple plaintext TODO.txt file; instead of using and IDE use [vim](vim.md) or something similar. Stay away from [OOP](oop.md), [dependencies](dependency.md) etc.
- **Don't listen to advice of anyone who does programming for living**, he's most definitely accustomed to the worst ways of programming and will try to push you to [OOP](oop.md), [bloat](bloat.md), [proprietary](proprietary.md) tech, [tranny software](tranny_software.md), [GitHub](github.md) etc. Listening to advice of such people is like taking advice on whether to take drugs from a drug dealer.
- **Most true programming is done away from the computer** -- soydevs think that a good programmer just spends hours in front of a computer bashing the keyboard and drinking litres of coffee to stay alive and [PRODUCTIVE](productivity_cult.md); indeed, they usually do, but they are not good programmers, their time is spent slaving the computer doing [maintenance](maintenance.md), debugging, googling, updating and socializing on Twitter. A good programmer actually programs everywhere: when going for walk, before falling asleep, when sleeping, when watching a movie etc. He only starts writing a serious program after years of thinking about it and already having most of it programmed in his head; sitting in front of a computer and writing the algorithm down is only the final smaller part of the journey.
- It can't be repeated enough times: minimize ALL kinds of [dependencies](dependency.md), don't use what you don't necessarily need -- this doesn't just apply to libraries but also design decisions. E.g. if you're making a compiler, make it a single pass compiler if at all possible, don't perform several source code passes if that's not absolutely necessary (which would however likely signify some flaw in the design of your language). Use [fixed point](fixed_point.md) instead of [floating point](float.md) if you can, [software rendering](sw_rendering.md) instead of GPU rendering etc. If you're making something that transforms text to another text (e.g. machine translation), make it a [filter](filter.md) with constant memory complexity if that's possible, i.e. do not require the program to load a whole input file to memory. Etcetc.
- During development turn off optimization flags for faster compiling and turn on verbosity and various checks, e.g. `-Werror -Wall -Wextra -Wpedantic` for [C](c.md).
- TODO: moar
- By [Unix philosophy](unix_philosophy.md) don't be afraid to throw away your code and star over and better -- next time you'll most likely write the same program a lot better and if you're a Unix programmer, your programs are small, possible to be reimplemented in hours or a few days.
- TODO: moar

@ -10,4 +10,36 @@ On 6th and 9th August 1945 **USA murdered about 200000 civilians**, most of whom
**Americans are uber retarded** for example in trying to somehow pursue both [self interest](self_interest.md) and "social equality", it's extremely ridiculous, an american brain is literally incapable of imagining someone who doesn't at his core work on the basis of self interest, so the American that tries to identify with "wanting equality and human rights" just comes up with hugely fucked up arguments like ["SKIN COLOR IS JUST ILLUSION THEREFORE WE ARE ALL EQUAL"](political_correctness.md) -- because he inevitably sees differences implying oppression because self interest just cannot be not present (this idea won't even occur for a second to him during his whole lifetime, it's simply something he NEVER can physically think), his mind is hard wired to be unable of grasping the idea of accepting difference between people while giving up the self interest of falling to [fascism](fascism.md) as a consequence. Similar arguments are encountered e.g. regarding [vegetarianism](vegetarianism.md): an American supporting vegetarianism will resort to denying evolution, biology and anatomy and will argue something like "HUMANS ARE HERBIVORES BECAUSE THIS FEMINIST SCIENTIST SAYS IT AND MEAT KILLS US SO WE MUST NOT EAT IT", again because he just thinks that admitting meat is healthy to us automatically implies we have to eat it because self interest is just something that's an inherent part of laws of physics; a normal (non retarded) vegetarian will of course admit not eating meat at all is probably a bit unhealthy, but it's a voluntary choice made of altruistic love towards other living beings who now don't have to die for one's tastier food.
{ "List of atrocities by the United States" is the longest page on leftypedia :-) https://wiki.leftypol.org/wiki/List_of_atrocities_committed_by_the_United_States. ~drummyfish }
{ "List of atrocities by the United States" is the longest page on leftypedia :-) https://wiki.leftypol.org/wiki/List_of_atrocities_committed_by_the_United_States. ~drummyfish }
Here is a comparison of average European country before and after infestation with American culture (judged by Czech Republic, the author's country of residence, but it's more or less the same in whole EU):
| what | before US culture (~1990s) | after US culture (~2020s) |
| ----------------------------- | -------------------------- | ------------------------- |
| mass shootings | no | yes |
| [feminazism](feminism.md) | no | yes |
| [gay fascism](lgbt.md) | no | yes |
| [slavery](work.md) | mild | extreme |
| public toilets | yes | no |
| free healthcare | yes | no |
| corruption | mild | extreme |
| youtubers | no | yes |
| Santa Claus | no | yes |
| ads | mild | unbearable, aggressive |
| morality | sometimes | no |
| idiots | some | all |
| [free speech](free_speech.md) | mostly | no |
| [Apple](apple.md) | no | yes |
|[privacy](privacy.md) hysteria | no | yes |
| social security | yes | no |
| old age pension | yes | no |
|[fear culture](fear_culture.md)| no | extreme |
| update culture, consumerism | mostly not | extreme |
| powerty | none | extreme |
| financial crisis | no | yes |
| society collapsing | no | yes |
| [art](art.md) and culture | good | none |
| [toxicity](toxic.md) | rare | extreme |
| [technology](tech.md) | fine | worst in history |
| wanted to commit suicide | no | yes |
| society worked | kinda | no |

@ -2,8 +2,8 @@
This is an auto-generated article holding stats about this wiki.
- number of articles: 531
- total size of all texts in bytes: 2650806
- number of articles: 532
- total size of all texts in bytes: 2659276
longest articles:
@ -23,6 +23,20 @@ longest articles:
latest changes:
```
Date: Sun Dec 31 01:01:53 2023 +0100
books.md
democracy.md
encyclopedia.md
git.md
jesus.md
marxism.md
needed.md
political_correctness.md
prime.md
selflessness.md
usa.md
wiki_stats.md
wikipedia.md
Date: Fri Dec 29 13:37:40 2023 +0100
ascii_art.md
cc.md
@ -42,19 +56,5 @@ evil.md
go.md
lmao.md
minimalism.md
optimization.md
people.md
programming_style.md
programming_tips.md
raycasting.md
slowly_boiling_the_frog.md
usenet.md
viznut.md
wiki_stats.md
Date: Tue Dec 26 23:42:01 2023 +0100
c.md
duskos.md
fixed_point.md
forth.md
```

Loading…
Cancel
Save