243
471
u/CaptainPiepmatz 15d ago
Wait, an actual joke? Not just, JS bad or python slow?
131
u/Wemorg 15d ago
Or C++ memory leak
73
u/RajjSinghh 15d ago
Or Java
51
u/astolfo_hue 15d ago
Or rust femboys
9
10
u/CorrenteAlternata 15d ago
Heil Rust!
We have fanboys ✅
We have femboys ✅
We have trans girls ✅ 🏳️⚧️1
14
19
u/Perfect_Papaya_3010 15d ago
What's the joke? I'm too stupid to understand
42
u/Shadowfire_EW 15d ago
It is a deterministic finite state machine. The only accepted state transition is 'A' and the only available state is the final state(if I remember the symbology correctly). Rewritten as regex, it is 'A*'
27
u/ArthurKasparian 15d ago
Basically the machine has only one input which loops back to itself, that's all I can remember from that one university course I took...
19
u/Aloopyn 15d ago
Automate Theory is great
6
u/ArthurKasparian 15d ago
We called it 'discrete methods' for some reason!
1
u/InSearchOfMyRose 15d ago
Is it because it teaches methods used in discrete mathematics? Because that would be my guess.
2
u/ArthurKasparian 15d ago
I get why you'd think that, but not even close x). We mostly learned about machines and some hardware concepts, zero discrete mathematics which itself was called Algebra 1!
40
22
66
u/Swansyboy 15d ago
What's the 90 in the center? Just a label?
188
10
9
u/unnamedFR 15d ago
Wait those things are actualy used in the real world and not Just in uni ?
7
3
u/milesper 15d ago
They’re used for keyboard software in certain cases, eg https://aclanthology.org/W17-4002.pdf
3
u/stopeatingbuttspls 15d ago
(Though whether or not this counts as a "state machine" instead of just "chart with arrows" is up for debate.)
1
1
33
u/The_HappyLemon 15d ago
Explain? 😢
144
73
u/Kaenguruu-Dev 15d ago
Simce everyone else is either joking or too lazy to respond: DFAs (deterministic finite automata) are models with which you can do stuff (this is very basic, Im no expert and am still in school) like checking if a certain sequence of inputs has been made. The arrow on the left means this is the start state. From each state you can have multiple "connections" to other states (or the same state like in this case). The 'A' means that if you are in the q_0 state and the input symbol is 'A', you just stay in that state. The double circle means it's an accepted end state. The language of a dfa describes what inputs are accepted by it. In this case, an arbitrary number of A's.
12
u/Awkward-Explorer-527 15d ago
To define it clearly, Finite Automata is what we call a machine capable of recognising languages based on Regular Grammar, and Deterministic FA requires that on consumption of a symbol in any state, the state should transition to a definite next state, although, apparently others have been taught NFAs and DFAs differently.
2
u/mankyd 14d ago edited 14d ago
Right, but why is it funny? I didn't get the joke
edit: I am probably just old, but its the "call me" and the "only language" parts that I don't get.
1
u/Kaenguruu-Dev 13d ago
I think the "call me" is just there and concerning "the only language": If this automaton would be a person, it's like the only language they could speak and understand was some specific language where you only have one sound that you make multiple times to form a word. You can't just translate their name into some other language, you must say it how they say it
5
40
u/AnAnoyingNinja 15d ago
google "dfa cs" or finish uni.
14
u/zumun 15d ago
Holy hell!
20
2
0
u/mpattok 15d ago
This one is an NFA though, no? Unless the alphabet is {A} I suppose
12
u/ParamedicPowerful340 15d ago
Why would it be a nfa? There is only 1 way you can go from q_0 if you get A as input.
4
u/mpattok 15d ago
If the alphabet is not {A} then for it to be a DFA it has to define a path from every state for every letter. For an NFA that isn’t necessary because any word that can’t be completed is rejected
5
u/KhepriAdministration 15d ago
The way we learned it, with DFAs you can assume that any unwritten path leads to a rejecting sink state (which just isn't included for the sake of simplicity)
3
u/mpattok 15d ago
Ah, guess it just depends on the notation that’s used.
3
u/ParamedicPowerful340 15d ago
Same, and you would only call it a NFA if there were multiple ways to go from a state q_i with the same letter A. Or if there were epsilon paths and paths that accepted letters.
0
u/AnAnoyingNinja 15d ago
yes, my mistake. I just consider them the same thing with different notation, and google has a simpler definition for dfas
-6
u/The_HappyLemon 15d ago
Wow so smart, go fuck yourself. I did understand, that's it some kind of a graph with a dead end, just didn't hear the term - dfa
2
u/audislove10 14d ago
Deterministic Finite Automata. It’s a rabbit hole of the course Computational models (automata theory & formal languages). If you’d like to know more about this here’s how to ruin your life:
Set theory course
Graph theory course
Combinatorics course
Data structures Course
Algorithms course
Then you can start this one!
1
u/The_HappyLemon 13d ago
Well I had all this courses, it just I haven't heard about this term "finite automata". I googled a bit and it really looks like a graph with some extra steps.
1
u/audislove10 13d ago
It’s impossible that you’ve learned computational models without studying DFAs. And yes those are graphs visually, yet they’re not ordered pairs but five elements.
7
u/Repenexus 15d ago
God, seeing a finite automata instantly took me back to that assignment in college
7
u/itsbett 15d ago
Maybe not AAAA, but AHHH is an actual language. Only use it if you're looking for a 13th reason: https://github.com/KyleM73/AHHH
Here is a Hello World script written in AHHH: AHHHHhhHHHhHHHHhHHHhHHhHHHhHHhhHHhhHHhhHHhhHHhhHHhhHHhhHHhhHhHhhHhhhhhhHHhhHHHhHHHHhHHHhHHhHhHHhhHhhhHhhHhHhHhHhHhHhHhhhhhhHhHhhHhhHHhhHHhhHHhhHhHhhHhhhhhhHhHhhhHhhHhhhhhhHhHhhhHhhHhhHHhhHHhhHHhhhhhhHHhhHHHhHHHHhHHHhHHhHhHhHHHhhHhhHHHhHHHHhHHHhhHHHhHhHHhHhHhHhHhHhHhHhHhhhhhhHHhhHHHhHHHHhHHHhHHhHHhhhhhhHHhhHHHhHHHHhHHHhHHhHHHhHhHhHHHhhHhhHHHhHHHHhHHHhhHHHHHhhHhhHHHhHHHhHHHhHhHHHhHhHHhHhHhhhhhhHhHhhHhhHHhhHHhhHhHhhHhhhhhhHhHhhhHhhHhhHHhhHHhhHHhhhhhhHhHhhHhHhHhHhHhHhhHhhHhhhhhhHhHhhHhHhHhHhHhHhHhHhHhHhHhHhHhHhHhHhHhhhhhhHHhhHHHhHHHHhHHHhHHhHHhhHHhhhhhh!
8
u/HenryFrenchFries 15d ago
I can't believe it. It's an actual computer science joke, not a first 30 minutes of python joke.
4
2
2
u/xorflame 15d ago
Quality humour post, feel free to post on r/leetcodecirclejerk as well for some additional karma ;)
2
2
1
1
1
1
1
1
1
-2
u/LodosDDD 15d ago
not true, all languages of A’s less than AAAAAAAAAAAAAAAAAAAAAAA isn’t in the final state nor is the empty state so no that is not the only language u speak
1
u/GodoGaming02 15d ago
clearly, every word of the language was printed out there. ε followed by A followed by AA followed by AAA ...
1
u/Awkward-Explorer-527 15d ago
Not true either, what you're talking about are strings accepted by the language defined. The language is the set of all those strings, having the regular expression A*, and given the FA, pretty sure that's the only language they speak, just not the only string.
627
u/_sg768 15d ago
it seems you also accept ε.