mastodon.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
The original server operated by the Mastodon gGmbH non-profit

Administered by:

Server stats:

337K
active users

#nfa

0 posts0 participants0 posts today
Lorry :unverified:<p>I figured it was time to write a weblog post breaking down the political and illogical farce of Trudeau's executive actions on firearms these last few years. </p><p>You probably won't see many posts like this from the far left, but as the saying goes: "When you go far enough left, you get your guns back."</p><p>Oh yeah, I should put a link instead of spending all of my time writing an alt-text on that free Tornado spud-gun advert that doesn't even link anywhere.</p><p><a href="https://superhighwayman.com/2025/canadas-gun-bans/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">superhighwayman.com/2025/canad</span><span class="invisible">as-gun-bans/</span></a></p><p><a href="https://infosec.exchange/tags/Canada" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Canada</span></a> <a href="https://infosec.exchange/tags/Guns" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Guns</span></a> <a href="https://infosec.exchange/tags/CanPoli" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CanPoli</span></a> <a href="https://infosec.exchange/tags/Politics" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Politics</span></a> <a href="https://infosec.exchange/tags/Firearms" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Firearms</span></a> <a href="https://infosec.exchange/tags/SKS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SKS</span></a> <a href="https://infosec.exchange/tags/I" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>I</span></a> <a href="https://infosec.exchange/tags/Bet" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Bet</span></a> <a href="https://infosec.exchange/tags/Twitter" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Twitter</span></a> <a href="https://infosec.exchange/tags/Has" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Has</span></a> <a href="https://infosec.exchange/tags/More" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>More</span></a> <a href="https://infosec.exchange/tags/AR15" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AR15</span></a> <a href="https://infosec.exchange/tags/Hashtags" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Hashtags</span></a> <a href="https://infosec.exchange/tags/than" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>than</span></a> <a href="https://infosec.exchange/tags/Mastodon" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Mastodon</span></a> <a href="https://infosec.exchange/tags/NFA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NFA</span></a> <a href="https://infosec.exchange/tags/PeePee" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>PeePee</span></a> <a href="https://infosec.exchange/tags/polievre" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>polievre</span></a> <a href="https://infosec.exchange/tags/Trudeau" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Trudeau</span></a> <a href="https://infosec.exchange/tags/Carney" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Carney</span></a> <a href="https://infosec.exchange/tags/BigBills" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>BigBills</span></a> <a href="https://infosec.exchange/tags/Blog" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Blog</span></a> <a href="https://infosec.exchange/tags/Tornado" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Tornado</span></a> <a href="https://infosec.exchange/tags/Comic" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Comic</span></a> <a href="https://infosec.exchange/tags/Potato" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Potato</span></a> <a href="https://infosec.exchange/tags/TooManyHashtags" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TooManyHashtags</span></a> <a href="https://infosec.exchange/tags/AI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AI</span></a> <a href="https://infosec.exchange/tags/Assisted" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Assisted</span></a> <a href="https://infosec.exchange/tags/Weblog" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Weblog</span></a> <a href="https://infosec.exchange/tags/NobodyReadsTheseAnyway" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NobodyReadsTheseAnyway</span></a> <a href="https://infosec.exchange/tags/RamRanch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RamRanch</span></a> <a href="https://infosec.exchange/tags/FreedumbConvoy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FreedumbConvoy</span></a> <a href="https://infosec.exchange/tags/TimBitTaliban" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TimBitTaliban</span></a> (I haven't used those for ages, I will stop now)</p>
BakersRelay<p><a href="https://m.ai6yr.org/tags/TheGremlinZoo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TheGremlinZoo</span></a> <a href="https://m.ai6yr.org/tags/Firefighting" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Firefighting</span></a> <a href="https://m.ai6yr.org/tags/NFA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NFA</span></a> </p><p>From WTOPNews.com: Concerns over the abrupt cancellation of National Fire Academy trainings </p><p><a href="https://wtop.com/frederick-county/2025/03/concerns-over-the-abrupt-cancellation-of-national-fire-academy-trainings/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">wtop.com/frederick-county/2025</span><span class="invisible">/03/concerns-over-the-abrupt-cancellation-of-national-fire-academy-trainings/</span></a></p>
David Palk#RejoinEU 💖🇪🇺🤎🕊<p><a href="https://mas.to/tags/housing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>housing</span></a> <a href="https://mas.to/tags/profiteers" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>profiteers</span></a> <a href="https://mas.to/tags/corruption" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>corruption</span></a> Not that I'd suggest any impropriety but..... (I am a former tenant of LBH / Social Housing), I went on one of my trampy adventures to return to find my tenancy had been sold on, the rent increased, I was considered a 'defaulter' ('they' had changed the terms) and was then <a href="https://mas.to/tags/NFA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NFA</span></a> (No Fixed Abode). F'ing <a href="https://mas.to/tags/capitalist" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>capitalist</span></a> bar_stewards. A bas l'eetat ✊ <br><a href="https://www.theguardian.com/society/2025/mar/09/uk-housing-associations-accused-of-mis-selling-affordable-homes-as-service-charges-soar-by-up-to-400?CMP=share_btn_url" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">theguardian.com/society/2025/m</span><span class="invisible">ar/09/uk-housing-associations-accused-of-mis-selling-affordable-homes-as-service-charges-soar-by-up-to-400?CMP=share_btn_url</span></a></p>
Harald<p>When you move, for example your software from Github to Codeberg, you should install a Nachsendeantrag (forwarding request).😜 </p><p>Not the least because the old version persists in search engine results.</p><p>I now did so on Github leading to my NFA/DFA software for Java: <a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p><p>Which was previously hosted on <a href="https://nrw.social/tags/github" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>github</span></a>: <a href="https://github.com/HaraldKi/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">github.com/HaraldKi/monqjfa</span><span class="invisible"></span></a></p><p><a href="https://nrw.social/tags/codeberg" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>codeberg</span></a> <a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a> <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a> <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a></p>
Harald<p><a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a>, my <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>/#dfa, <a href="https://nrw.social/tags/regex" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>regex</span></a> library for <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> got some cleanup in the way finite automata are built. They do not only have the accepting states, but a state may also store a value. The values can be used for special tricks during state traversal. Historically the only "trick" was that this was an accepting state.</p><p>The latest refactoring made it clearer that more can be done and how states with values and accepting states are related.</p><p><a href="https://harald.codeberg.page/monqjfa/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">harald.codeberg.page/monqjfa/</span><span class="invisible"></span></a></p><p>Feedback welcome.</p>
Harald<p><a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a>, my <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>/#dfa, <a href="https://nrw.social/tags/regex" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>regex</span></a> library for <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> has a grep-like program as an example of the use of the library. This got a new feature resembling grep's --color option to show matches with colors, using ANSI escape sequences</p><p>ooo r='RuleParser-&gt;{c:<a href="https://nrw.social/tags/44ff11" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>44ff11</span></a>}'</p><p>Yes, the program is called "ooo" 🙂 Why? ... Why not?</p><p>There are more things possible within the braces, the simplest one is </p><p> '...-&gt;{c}' as a shortcut for '...-&gt;{:red}</p><p>to get the match in red.</p><p><a href="https://harald.codeberg.page/monqjfa/javadoc/monq/Oooo.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">harald.codeberg.page/monqjfa/j</span><span class="invisible">avadoc/monq/Oooo.html</span></a></p>
:praha_metro: Chloe :sallysbahn: :Blobhaj_Flag_Lesbian:<p><span class="h-card" translate="no"><a href="https://zug.network/@tonfolge" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>tonfolge</span></a></span> <span class="h-card" translate="no"><a href="https://zug.network/@ril100" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ril100</span></a></span> <a href="https://zug.network/tags/NFA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NFA</span></a></p>
PD<p><span class="h-card" translate="no"><a href="https://mastodon.social/@salixsericea" class="u-url mention">@<span>salixsericea</span></a></span> ❤️❤️❤️ <a href="https://mastodon.social/tags/NFA" class="mention hashtag" rel="tag">#<span>NFA</span></a>!</p>
DataPEDIA<p>📈Data Insights from DataPEDIA This Week🚀</p><p>📊The latest data is in! Bitcoin hit all-time highs, accompanied by some significant liquidations. The numbers speak for themselves, and we’re here to track every shift. Stay tuned for more insights! <a href="https://mastodon.social/tags/NFA" class="mention hashtag" rel="tag">#<span>NFA</span></a> <a href="https://mastodon.social/tags/DYOR" class="mention hashtag" rel="tag">#<span>DYOR</span></a> <a href="https://mastodon.social/tags/data" class="mention hashtag" rel="tag">#<span>data</span></a> <a href="https://mastodon.social/tags/crypto" class="mention hashtag" rel="tag">#<span>crypto</span></a> <a href="https://mastodon.social/tags/bitcoin" class="mention hashtag" rel="tag">#<span>bitcoin</span></a></p>
Harald<p><a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a>, my finite automaton library for <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> got </p><p> Capturing Parenthesis</p><p>Wait, WHAT? This is impossible with a deterministic finite automaton!</p><p>Yes it is, in full generality. But in a limited fashion it is possible, and I am not at the end of the road of this experiment.</p><p><a href="https://codeberg.org/harald/monqjfa#dfa-versus-capturing-parentheses" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/harald/monqjfa#df</span><span class="invisible">a-versus-capturing-parentheses</span></a></p><p><a href="https://nrw.social/tags/jvm" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>jvm</span></a> <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a> <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a> <a href="https://nrw.social/tags/regex" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>regex</span></a></p>
Harald<p><a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a>, my <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>/#dfa, <a href="https://nrw.social/tags/regex" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>regex</span></a> library for <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> has a grep-like program as an example of the use of the library. This got a new feature resembling grep's -l option to only list file names with matches, not the matches themselves. Example</p><p>ooo r='import.*map' names=only src</p><p>Yes, the program is called "ooo" 🙂 Why? ... Why not?</p><p>The names=only is the new feature. As soon as a match is found, the file name is printed and the program moves on to the next file.</p><p><a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p>
OpenSoul ✅<p><span class="h-card" translate="no"><a href="https://mastodon.uno/@steek_hutzee" class="u-url mention">@<span>steek_hutzee</span></a></span> </p><p>Dai noi è come se esistesse una sorta di equivalente della <a href="https://mastodon.social/tags/NFA" class="mention hashtag" rel="tag">#<span>NFA</span></a> statunitense (<a href="https://mastodon.social/tags/NationalRifleAssociation" class="mention hashtag" rel="tag">#<span>NationalRifleAssociation</span></a>) solo che qui nessuno li conosce e li vede, sono lobbysti invisibili, ma purtroppo potentissimi</p>
Mike Says No<p>Sad, sad news. Steve Silberman has passed away. A wonderful and brilliant man. <a href="https://shakedown.social/tags/NFA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NFA</span></a> </p><p>RE: <a href="https://xoxo.zone/@mathowie/113046412549920878" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">xoxo.zone/@mathowie/1130464125</span><span class="invisible">49920878</span></a></p>
Harald<p>You sure have wondered what practical use the intersection of two regular languages has.😀 It is not live changing, but hey, at least interesting.😎 (To a certain tribe.)</p><p>Here it is: <a href="https://miamao.de/blog/2024-08/18.A_Practical_Use_for_Regular_Language_Intersection.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">miamao.de/blog/2024-08/18.A_Pr</span><span class="invisible">actical_Use_for_Regular_Language_Intersection.html</span></a><br><a href="https://nrw.social/tags/cs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cs</span></a> <a href="https://nrw.social/tags/computerscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>computerscience</span></a> <a href="https://nrw.social/tags/informatik" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatik</span></a> <a href="https://nrw.social/tags/endlicheautomaten" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>endlicheautomaten</span></a> <a href="https://nrw.social/tags/finiteautomata" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>finiteautomata</span></a> <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a> <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a> <a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a></p>
Harald<p><a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a>, my <a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>/#dfa, <a href="https://nrw.social/tags/regex" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>regex</span></a> library for <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> got its first new feature during current modernization. The last operation of finite automata/regular languages which was missing: intersection<br>You can now write a regular expression "some.*stuff&amp;(END)^" which means</p><p>Match strings which match<br>- some.*stuff<br>- AND (the &amp;) at the same time<br>- any string NOT CONTAINING (the ^) END</p><p>Allows to use .* but avoids a match across a hard end, e.g. the string "END".</p><p><a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p><p><a href="https://nrw.social/tags/computerscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>computerscience</span></a></p>
Harald<p>My <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> package <a href="https://nrw.social/tags/monqjfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>monqjfa</span></a> for (non)deterministic finite automata (<a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>, <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a>) got an update: Following the advice "eat your own dogfood", I wrote a small application somewhat resembling grep or sed, more to show how the library could be used than pretending to be better than sed/grep/awk. Though it has some coolness in the defaults used 😀 .</p><p><a href="https://codeberg.org/harald/monqjfa#example-application" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">codeberg.org/harald/monqjfa#ex</span><span class="invisible">ample-application</span></a></p><p><a href="https://nrw.social/tags/informatikEdu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatikEdu</span></a><br><a href="https://nrw.social/tags/informatik" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatik</span></a><br><a href="https://nrw.social/tags/endlicheautomaten" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>endlicheautomaten</span></a><br><a href="https://nrw.social/tags/finiteautomata" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>finiteautomata</span></a></p>
Harald<p>My <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> package for (non)deterministic finite automata (<a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>, <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a>) updated.</p><p>This refactoring/rewrite provides a cleaner API to creating an NFA and compiling a DFA from it.</p><p><a href="https://harald.codeberg.page/monqjfa/javadoc/monq/jfa/NfaBuilder.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">harald.codeberg.page/monqjfa/j</span><span class="invisible">avadoc/monq/jfa/NfaBuilder.html</span></a></p><p>Computer science courses may visualize NFA and DFA via the included FaToDot. I think Thompson's Construction in the code is quite readable.</p><p><a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p><p><a href="https://nrw.social/tags/informatikEdu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatikEdu</span></a><br><a href="https://nrw.social/tags/informatik" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatik</span></a><br><a href="https://nrw.social/tags/endlicheautomaten" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>endlicheautomaten</span></a><br><a href="https://nrw.social/tags/finiteautomata" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>finiteautomata</span></a></p>
Harald<p>My <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> package for (non)deterministic finite automata (<a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>, <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a>) updated.</p><p>You can create massive regular expressions with tons of stop states. Each stop state has a value, so a match is effectively a lookup. Like a hash table where the keys are regular expressions.</p><p>Computer science courses may visualize NFA and DFA via the included FaToDot. I think Thompson's Construction in the code is quite readable.</p><p><a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p><p><a href="https://nrw.social/tags/informatikEdu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatikEdu</span></a> <a href="https://nrw.social/tags/informatik" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>informatik</span></a> <a href="https://nrw.social/tags/endlicheautomaten" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>endlicheautomaten</span></a> <a href="https://nrw.social/tags/finiteautomata" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>finiteautomata</span></a></p>
Harald<p>I finished another round of modernizing my (Non)deterministic Finite Automata (<a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>, <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a>) <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> library.</p><p>Now with <a href="https://nrw.social/tags/Javadoc" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Javadoc</span></a> on the <a href="https://nrw.social/tags/Codeberg" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Codeberg</span></a> pages for the project. The link is at the top of the README.</p><p><a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p>
Harald<p>After years I looked again at a <a href="https://nrw.social/tags/Java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Java</span></a> library I once wrote to create (Non)deterministic Finite Automata (<a href="https://nrw.social/tags/nfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nfa</span></a>, <a href="https://nrw.social/tags/dfa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>dfa</span></a>). I removed a lot of stuff to trim it to the real core. Now I will slowly add features again.</p><p>In contrast to builtin regular expression in Java, this one does DFAs and also allows to visualize them (see FaToDot). Javadoc and tutorial are not up, but source code is on <a href="https://nrw.social/tags/codeberg" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>codeberg</span></a> .</p><p>The name prefix, monq, was not invented by a native french speaker. 😀 </p><p><a href="https://codeberg.org/harald/monqjfa" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/harald/monqjfa</span><span class="invisible"></span></a></p>