mirror of
https://github.com/lavafroth/lavafroth.github.io.git
synced 2026-06-09 12:11:21 -03:00
deploy: 0acd5b15448bc61322286ea8fabd217a3ec6c4d1
This commit is contained in:
18
index.html
18
index.html
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>lavafroth</title><link>https://lavafroth.is-a.dev/</link><description>Recent content on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 10 Aug 2024 08:18:30 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>CUDA on NixOS Without Sacrificing One's Sanity</title><link>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</link><pubDate>Sat, 10 Aug 2024 08:18:30 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</guid><description>TL;DR: Save this flake, run nix develop and setup PyTorch as described
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>lavafroth</title><link>https://lavafroth.is-a.dev/</link><description>Recent content on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>CUDA on NixOS Without Sacrificing One's Sanity</title><link>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</link><pubDate>Sat, 10 Aug 2024 08:18:30 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</guid><description>TL;DR: Save this flake, run nix develop and setup PyTorch as described
|
||||
CUDA is a proprietary vendor lock-in for machine learning folks. Training ML models is incredibly fast with CUDA as compared to CPUs due to the parallel processing. So if you&rsquo;re doing something serious, you have no other choice besides CUDA as of writing. Although, OpenAI&rsquo;s Triton and ZLUDA are worth keeping an eye on.
|
||||
Unlike your average distro, Nix will store its packages and libraries (derivations) in the Nix store instead of locations like /usr/bin, /usr/lib and /usr/lib64.</description></item><item><title>Amateur Blender Sculpture</title><link>https://lavafroth.is-a.dev/art/amateur-blender-sculpture/</link><pubDate>Sat, 03 Aug 2024 17:50:00 +0530</pubDate><guid>https://lavafroth.is-a.dev/art/amateur-blender-sculpture/</guid><description>This is my first time trying out sculpting in blender, so forgive me for the quality of the sculpt. I&rsquo;m still pretty much in the learning stage. Big thank you to Nichole Sebastian for the reference photo. Also apologies if the empty eye sockets gave you a jumpscare.</description></item><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
BIN
pagefind/fragment/en-us_70bf76d.pf_fragment
Normal file
BIN
pagefind/fragment/en-us_70bf76d.pf_fragment
Normal file
Binary file not shown.
BIN
pagefind/index/en-us_15df98d.pf_index
Normal file
BIN
pagefind/index/en-us_15df98d.pf_index
Normal file
Binary file not shown.
BIN
pagefind/index/en-us_18f0983.pf_index
Normal file
BIN
pagefind/index/en-us_18f0983.pf_index
Normal file
Binary file not shown.
BIN
pagefind/index/en-us_292388e.pf_index
Normal file
BIN
pagefind/index/en-us_292388e.pf_index
Normal file
Binary file not shown.
BIN
pagefind/index/en-us_332c3f2.pf_index
Normal file
BIN
pagefind/index/en-us_332c3f2.pf_index
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
pagefind/index/en-us_d996a76.pf_index
Normal file
BIN
pagefind/index/en-us_d996a76.pf_index
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
{"version":"1.0.3","languages":{"en-us":{"hash":"en-us_25f6924fc9aeb","wasm":"en-us","page_count":45}}}
|
||||
{"version":"1.0.3","languages":{"en-us":{"hash":"en-us_fab5584d1c0d6","wasm":"en-us","page_count":46}}}
|
||||
Binary file not shown.
BIN
pagefind/pagefind.en-us_fab5584d1c0d6.pf_meta
Normal file
BIN
pagefind/pagefind.en-us_fab5584d1c0d6.pf_meta
Normal file
Binary file not shown.
@@ -77,4 +77,5 @@ so that hopefully this article becomes irrelevant in the future.</p><p>Bye now.<
|
||||
<a href=https://lavafroth.is-a.dev/tags/workflow class=list-tag>Workflow</a>
|
||||
<a href=https://lavafroth.is-a.dev/tags/nvidia class=list-tag>NVIDIA</a>
|
||||
<a href=https://lavafroth.is-a.dev/tags/cuda class=list-tag>CUDA</a>
|
||||
<a href=https://lavafroth.is-a.dev/tags/rant class=list-tag>Rant</a></footer><nav class=post-nav><a class=next href=https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/><span>How I Use SWHKD in My Workflow</span><span>→</span></a></nav></main><footer class=footer><p>© 2024 <a href=https://lavafroth.is-a.dev/>lavafroth</a> | <a href=https://github.com/lavafroth/lavafroth.github.io/issues/new/choose>Report an issue</a> | <a href=https://github.com/lavafroth/lavafroth.github.io/discussions/>Discuss</a> | <a href=https://lavafroth.is-a.dev/privacy>Privacy</a> | <a href=https://creativecommons.org/licenses/by-sa/4.0/legalcode>License</a></p></footer></body></html>
|
||||
<a href=https://lavafroth.is-a.dev/tags/rant class=list-tag>Rant</a></footer><nav class=post-nav><a class=prev href=https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/><span>←</span><span>Wrapping up GSoC 2024</span></a>
|
||||
<a class=next href=https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/><span>How I Use SWHKD in My Workflow</span><span>→</span></a></nav></main><footer class=footer><p>© 2024 <a href=https://lavafroth.is-a.dev/>lavafroth</a> | <a href=https://github.com/lavafroth/lavafroth.github.io/issues/new/choose>Report an issue</a> | <a href=https://github.com/lavafroth/lavafroth.github.io/discussions/>Discuss</a> | <a href=https://lavafroth.is-a.dev/privacy>Privacy</a> | <a href=https://creativecommons.org/licenses/by-sa/4.0/legalcode>License</a></p></footer></body></html>
|
||||
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on lavafroth</title><link>https://lavafroth.is-a.dev/post/</link><description>Recent content in Posts on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 10 Aug 2024 08:18:30 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/post/index.xml" rel="self" type="application/rss+xml"/><item><title>CUDA on NixOS Without Sacrificing One's Sanity</title><link>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</link><pubDate>Sat, 10 Aug 2024 08:18:30 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</guid><description>TL;DR: Save this flake, run nix develop and setup PyTorch as described
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on lavafroth</title><link>https://lavafroth.is-a.dev/post/</link><description>Recent content in Posts on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/post/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>CUDA on NixOS Without Sacrificing One's Sanity</title><link>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</link><pubDate>Sat, 10 Aug 2024 08:18:30 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/cuda-on-nixos-without-sacrificing-ones-sanity/</guid><description>TL;DR: Save this flake, run nix develop and setup PyTorch as described
|
||||
CUDA is a proprietary vendor lock-in for machine learning folks. Training ML models is incredibly fast with CUDA as compared to CPUs due to the parallel processing. So if you&rsquo;re doing something serious, you have no other choice besides CUDA as of writing. Although, OpenAI&rsquo;s Triton and ZLUDA are worth keeping an eye on.
|
||||
Unlike your average distro, Nix will store its packages and libraries (derivations) in the Nix store instead of locations like /usr/bin, /usr/lib and /usr/lib64.</description></item><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
70
post/the-gsoc-grand-finale/index.html
Normal file
70
post/the-gsoc-grand-finale/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
3
sweet-architecture.svg
Normal file
3
sweet-architecture.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 34 KiB |
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>EBNF on lavafroth</title><link>https://lavafroth.is-a.dev/tags/ebnf/</link><description>Recent content in EBNF on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 29 Jul 2024 13:46:41 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/ebnf/index.xml" rel="self" type="application/rss+xml"/><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>EBNF on lavafroth</title><link>https://lavafroth.is-a.dev/tags/ebnf/</link><description>Recent content in EBNF on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/ebnf/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
Eagerly removing unbinds While going through the tests, I figured that the prior parser eagerly parses unbinds and removes said keystroke combinations from our binding set. Unlike the previous iteration, our iteration had unbinds as a separate set which deferred the task of the removing the set intersection to the upstream crate instead.</description></item><item><title>Humans Suck at Command Sanitization</title><link>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</link><pubDate>Wed, 17 Jul 2024 07:55:34 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</guid><description>Hello and welcome to the eighth instalment in the series where we build a parser for a domain specific language in Rust. I’d highly recommend going through the previous articles to make sense of what we’ll talk about today.
|
||||
Previously, we had built the scaffolding for modes to bind shortcuts to. Today, we&rsquo;ll create the mechanism to invoke commands in the contexts of the modes that can be built.
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Google Summer of Code on lavafroth</title><link>https://lavafroth.is-a.dev/tags/google-summer-of-code/</link><description>Recent content in Google Summer of Code on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 01 Aug 2024 17:17:31 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/google-summer-of-code/index.xml" rel="self" type="application/rss+xml"/><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Google Summer of Code on lavafroth</title><link>https://lavafroth.is-a.dev/tags/google-summer-of-code/</link><description>Recent content in Google Summer of Code on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/google-summer-of-code/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
Eagerly removing unbinds While going through the tests, I figured that the prior parser eagerly parses unbinds and removes said keystroke combinations from our binding set. Unlike the previous iteration, our iteration had unbinds as a separate set which deferred the task of the removing the set intersection to the upstream crate instead.</description></item><item><title>Humans Suck at Command Sanitization</title><link>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</link><pubDate>Wed, 17 Jul 2024 07:55:34 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</guid><description>Hello and welcome to the eighth instalment in the series where we build a parser for a domain specific language in Rust. I’d highly recommend going through the previous articles to make sense of what we’ll talk about today.
|
||||
Previously, we had built the scaffolding for modes to bind shortcuts to. Today, we&rsquo;ll create the mechanism to invoke commands in the contexts of the modes that can be built.
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rust on lavafroth</title><link>https://lavafroth.is-a.dev/tags/rust/</link><description>Recent content in Rust on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 29 Jul 2024 13:46:41 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/rust/index.xml" rel="self" type="application/rss+xml"/><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rust on lavafroth</title><link>https://lavafroth.is-a.dev/tags/rust/</link><description>Recent content in Rust on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/rust/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
Eagerly removing unbinds While going through the tests, I figured that the prior parser eagerly parses unbinds and removes said keystroke combinations from our binding set. Unlike the previous iteration, our iteration had unbinds as a separate set which deferred the task of the removing the set intersection to the upstream crate instead.</description></item><item><title>Humans Suck at Command Sanitization</title><link>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</link><pubDate>Wed, 17 Jul 2024 07:55:34 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</guid><description>Hello and welcome to the eighth instalment in the series where we build a parser for a domain specific language in Rust. I’d highly recommend going through the previous articles to make sense of what we’ll talk about today.
|
||||
Previously, we had built the scaffolding for modes to bind shortcuts to. Today, we&rsquo;ll create the mechanism to invoke commands in the contexts of the modes that can be built.
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SWHKD on lavafroth</title><link>https://lavafroth.is-a.dev/tags/swhkd/</link><description>Recent content in SWHKD on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 01 Aug 2024 17:17:31 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/swhkd/index.xml" rel="self" type="application/rss+xml"/><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SWHKD on lavafroth</title><link>https://lavafroth.is-a.dev/tags/swhkd/</link><description>Recent content in SWHKD on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/swhkd/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
Eagerly removing unbinds While going through the tests, I figured that the prior parser eagerly parses unbinds and removes said keystroke combinations from our binding set. Unlike the previous iteration, our iteration had unbinds as a separate set which deferred the task of the removing the set intersection to the upstream crate instead.</description></item><item><title>Humans Suck at Command Sanitization</title><link>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</link><pubDate>Wed, 17 Jul 2024 07:55:34 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</guid><description>Hello and welcome to the eighth instalment in the series where we build a parser for a domain specific language in Rust. I’d highly recommend going through the previous articles to make sense of what we’ll talk about today.
|
||||
Previously, we had built the scaffolding for modes to bind shortcuts to. Today, we&rsquo;ll create the mechanism to invoke commands in the contexts of the modes that can be built.
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Waycrate on lavafroth</title><link>https://lavafroth.is-a.dev/tags/waycrate/</link><description>Recent content in Waycrate on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 01 Aug 2024 17:17:31 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/waycrate/index.xml" rel="self" type="application/rss+xml"/><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Waycrate on lavafroth</title><link>https://lavafroth.is-a.dev/tags/waycrate/</link><description>Recent content in Waycrate on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/waycrate/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
Eagerly removing unbinds While going through the tests, I figured that the prior parser eagerly parses unbinds and removes said keystroke combinations from our binding set. Unlike the previous iteration, our iteration had unbinds as a separate set which deferred the task of the removing the set intersection to the upstream crate instead.</description></item><item><title>Humans Suck at Command Sanitization</title><link>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</link><pubDate>Wed, 17 Jul 2024 07:55:34 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</guid><description>Hello and welcome to the eighth instalment in the series where we build a parser for a domain specific language in Rust. I’d highly recommend going through the previous articles to make sense of what we’ll talk about today.
|
||||
Previously, we had built the scaffolding for modes to bind shortcuts to. Today, we&rsquo;ll create the mechanism to invoke commands in the contexts of the modes that can be built.
|
||||
|
||||
8
tags/waycrate/page/2/index.html
Normal file
8
tags/waycrate/page/2/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Wayland on lavafroth</title><link>https://lavafroth.is-a.dev/tags/wayland/</link><description>Recent content in Wayland on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 01 Aug 2024 17:17:31 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/wayland/index.xml" rel="self" type="application/rss+xml"/><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Wayland on lavafroth</title><link>https://lavafroth.is-a.dev/tags/wayland/</link><description>Recent content in Wayland on lavafroth</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 24 Aug 2024 10:28:50 +0530</lastBuildDate><atom:link href="https://lavafroth.is-a.dev/tags/wayland/index.xml" rel="self" type="application/rss+xml"/><item><title>Wrapping up GSoC 2024</title><link>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</link><pubDate>Sat, 24 Aug 2024 10:28:50 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/the-gsoc-grand-finale/</guid><description>Overview Hello and welcome to the final GSoC post for 2024! My task was to formalize the SWHKD parser using context-free EBNF notation. This post is to serve as a birdseye view of what I have developed over the past few months.
|
||||
Report Implementing the EBNF parser in Pest I started out with the scaffolding of the parser in an extended Backus-Naur form garmmar template in a separate repository called SWEET using a Rust framework called pest.</description></item><item><title>How I Use SWHKD in My Workflow</title><link>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</link><pubDate>Thu, 01 Aug 2024 17:17:31 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/how-i-use-swhkd-in-my-workflow/</guid><description>SWHKD is the project that I have been working on for the past few months as a part of Google Summer of Code for this year. Now that we are done with the development process, I want to talk about why I wanted to improve the project. Although the easy answer is to get paid or to get a more production facing OSS development experience, for me, the most important driving force is using it in my own workflow.</description></item><item><title>Polishing and Bugfix Week</title><link>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</link><pubDate>Mon, 29 Jul 2024 13:46:41 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/polishing-and-bugfix-week/</guid><description>Hello and welcome to the last instalment in the series where we build a parser for a domain specific langauge in Rust. Please go through the previous articles since this article assumes you are aware of such contextual details.
|
||||
Let&rsquo;s start with the bugfixes.
|
||||
Eagerly removing unbinds While going through the tests, I figured that the prior parser eagerly parses unbinds and removes said keystroke combinations from our binding set. Unlike the previous iteration, our iteration had unbinds as a separate set which deferred the task of the removing the set intersection to the upstream crate instead.</description></item><item><title>Humans Suck at Command Sanitization</title><link>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</link><pubDate>Wed, 17 Jul 2024 07:55:34 +0530</pubDate><guid>https://lavafroth.is-a.dev/post/humans-suck-at-command-sanitization/</guid><description>Hello and welcome to the eighth instalment in the series where we build a parser for a domain specific language in Rust. I’d highly recommend going through the previous articles to make sense of what we’ll talk about today.
|
||||
Previously, we had built the scaffolding for modes to bind shortcuts to. Today, we&rsquo;ll create the mechanism to invoke commands in the contexts of the modes that can be built.
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user