Are you over 18 and want to see adult content?
More Annotations
A complete backup of hiskingdomprophecy.com
Are you over 18 and want to see adult content?
A complete backup of violentgentlemen.com
Are you over 18 and want to see adult content?
A complete backup of catholichogs.com
Are you over 18 and want to see adult content?
A complete backup of crossfireofficial.com
Are you over 18 and want to see adult content?
A complete backup of kreatywnykacik.pl
Are you over 18 and want to see adult content?
Favourite Annotations
A complete backup of unchienenville.com
Are you over 18 and want to see adult content?
A complete backup of gwen-howard-644b.squarespace.com
Are you over 18 and want to see adult content?
A complete backup of simplelivingcreativelearning.com
Are you over 18 and want to see adult content?
A complete backup of adaddanuarta.blogspot.com
Are you over 18 and want to see adult content?
A complete backup of hunksofbeef.tumblr.com
Are you over 18 and want to see adult content?
Text
optimized
HOW TO IMPLEMENT A HASH TABLE (IN C) PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it into an x86-64 assembly program. It’s basically a toy, but it shows how easy it is to use the ast module to co-opt Python’s lovely syntax for your own ends. PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – and LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM BEN HOYTRESUME/CVPROJECTSTECH WRITINGNON-TECHBENHOYT.COMPRISM MAGAZINE Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles. DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party router AN INTRO TO GO FOR NON-GO DEVELOPERS PERFORMANCE COMPARISON: COUNTING WORDS IN PYTHON, GO, C++ Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust. March 2021. Summary: I describe a simple interview problem (counting frequencies of unique words), solve it in various languages, and compare performance across them. For each language, I’ve included a simple, idiomatic solution as well as a moreoptimized
HOW TO IMPLEMENT A HASH TABLE (IN C) PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it into an x86-64 assembly program. It’s basically a toy, but it shows how easy it is to use the ast module to co-opt Python’s lovely syntax for your own ends. PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – and LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React toBEN HOYT
Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info.. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles.. Other web sites I run PROJECTS I’VE AUTHORED Below are some small open source software projects I’ve authored or helped develop. Most of them are released under a BSD or MIT license. Enjoy! GoAWK is an AWK interpreter written in Go. Read about it in depth. scandir is a better directory iterator and faster os.walk BEN HOYT’S RESUME/CV Summary. I’m a software engineer with fifteen years of experience developing web applications and services, as well as providing technical leadership for small teams of software developers. I’m fluent in Go, Python, C, SQL, HTML, and English. I’ve also written a PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React GOAWK, AN AWK INTERPRETER WRITTEN IN GO GoAWK, an AWK interpreter written in Go. November 2018. Summary: After reading The AWK Programming Language I was inspired to write an interpreter for AWK in Go. This article gives an overview of AWK, describes how GoAWK works, how I approached testing, and how I measured and improved its performance. A LOX INTERPRETER IMPLEMENTED IN LOX A Lox interpreter implemented in Lox. October 2018. Summary: I had a lot of fun reading Crafting Interpreters with its “Lox” language. Being the meta-nerd that I am, I decided that it’d be fun to write an interpreter for Lox, in Lox (while eating lox). MUGO, A TOY COMPILER FOR A SUBSET OF GO THAT CAN COMPILE Mugo, a toy compiler for a subset of Go that can compile itself. Summary: This article presents Mugo, a single-pass compiler for a tiny subset of the Go programming language. It outputs (very naive) x86-64 assembly, and supports just enough of the language to implement a Mugo compiler: int and string types, slices, functions, locals, globals ZZT IN GO (USING A PASCAL-TO-GO CONVERTER) I used go build -gcflags="-e" to build the converted Go, so as to print all errors rather than just the first few, and outputted the results to an errors.txt file. Initially this file had over 800 errors in it. By the end of my automated translation journey, it had only 33 – which I then fixed up manually. SYCAMORE (POETRY, ISSUE 3) of the bark. It bears the gnarls of its history. healed over. It has risen to a strange perfection. in the warp and bending of its long growth. It has gathered all accidents into its purpose. It has become the intention and radiance of its dark fate. It is a fact, sublime, mystical and unassailable. BEN HOYTRESUME/CVPROJECTSTECH WRITINGNON-TECHBENHOYT.COMPRISM MAGAZINE Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles. DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party routerTECHNICAL WRITING
AN INTRO TO GO FOR NON-GO DEVELOPERS PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it into an x86-64 assembly program. It’s basically a toy, but it shows how easy it is to use the ast module to co-opt Python’s lovely syntax for your own ends. A LOX INTERPRETER IMPLEMENTED IN LOX LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – and BEN HOYTRESUME/CVPROJECTSTECH WRITINGNON-TECHBENHOYT.COMPRISM MAGAZINE Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles. DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party routerTECHNICAL WRITING
AN INTRO TO GO FOR NON-GO DEVELOPERS PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it into an x86-64 assembly program. It’s basically a toy, but it shows how easy it is to use the ast module to co-opt Python’s lovely syntax for your own ends. A LOX INTERPRETER IMPLEMENTED IN LOX LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – andBEN HOYT
Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info.. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles.. Other web sites I run PROJECTS I’VE AUTHORED Below are some small open source software projects I’ve authored or helped develop. Most of them are released under a BSD or MIT license. Enjoy! GoAWK is an AWK interpreter written in Go. Read about it in depth. scandir is a better directory iterator and faster os.walk AN INTRO TO GO FOR NON-GO DEVELOPERS An intro to Go for non-Go developers. June 2020. Summary: I’ve presented an introduction to Go a few times for developers who are new to the language – this is that talk serialized as a technical article. It looks at why you might want to use Go, and gives a briefoverview of
TECHNICAL WRITING
Technical Writing. Below are the programming-related articles I’ve written (see also my non-technical writings).The list includes the guest contributions I’ve written for LWN.net, and tech blog articles for several of the companies I’ve worked for. COMING IN GO 1.16: READDIR AND DIRENTRY Coming in Go 1.16: ReadDir and DirEntry. January 2021. As the primary author of Python’s os.scandir function and PEP 471 (the original proposal for scandir), I was very happy to see that Go is adding something similar in Go 1.16, which is coming out in late February 2021.. In Go it will be called os.ReadDir, and was proposed last September. After more than 100 comments and several tweaks to BEN HOYT’S RESUME/CV Summary. I’m a software engineer with fifteen years of experience developing web applications and services, as well as providing technical leadership for small teams of software developers. I’m fluent in Go, Python, C, SQL, HTML, and English. I’ve also written a PERFORMANCE COMPARISON: COUNTING WORDS IN PYTHON, GO, C++ Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust. March 2021. Summary: I describe a simple interview problem (counting frequencies of unique words), solve it in various languages, and compare performance across them. For each language, I’ve included a simple, idiomatic solution as well as a moreoptimized
PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – and MUGO, A TOY COMPILER FOR A SUBSET OF GO THAT CAN COMPILE Mugo, a toy compiler for a subset of Go that can compile itself. Summary: This article presents Mugo, a single-pass compiler for a tiny subset of the Go programming language. It outputs (very naive) x86-64 assembly, and supports just enough of the language to implement a Mugo compiler: int and string types, slices, functions, locals, globals SYCAMORE (POETRY, ISSUE 3) of the bark. It bears the gnarls of its history. healed over. It has risen to a strange perfection. in the warp and bending of its long growth. It has gathered all accidents into its purpose. It has become the intention and radiance of its dark fate. It is a fact, sublime, mystical and unassailable. BEN HOYTRESUME/CVPROJECTSTECH WRITINGNON-TECHBENHOYT.COMPRISM MAGAZINE Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info.. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles.. Other web sites I run DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party router PLAIN ENGLISH WESTMINSTER Plain English Westminster. A version of the Westminster Confession of Faith written in English that we in the pew can understand. Written on and off between 2009 and 2013. AN INTRO TO GO FOR NON-GO DEVELOPERS COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to A LOX INTERPRETER IMPLEMENTED IN LOX PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO pygit: Just enough of a Git client to create a repo, commit, and push itself to GitHub. April 2017. Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and pushitself to GitHub.
DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM GOAWK, AN AWK INTERPRETER WRITTEN IN GOSEE MORE ON BENHOYT.COM BEN HOYTRESUME/CVPROJECTSTECH WRITINGNON-TECHBENHOYT.COMPRISM MAGAZINE Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info.. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles.. Other web sites I run DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party router PLAIN ENGLISH WESTMINSTER Plain English Westminster. A version of the Westminster Confession of Faith written in English that we in the pew can understand. Written on and off between 2009 and 2013. AN INTRO TO GO FOR NON-GO DEVELOPERS COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to A LOX INTERPRETER IMPLEMENTED IN LOX PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO pygit: Just enough of a Git client to create a repo, commit, and push itself to GitHub. April 2017. Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and pushitself to GitHub.
DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM GOAWK, AN AWK INTERPRETER WRITTEN IN GOSEE MORE ON BENHOYT.COMBEN HOYT
Ben Hoyt. I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info.. I’ve created a few open source projects, and I enjoy writing technical and non-technical articles.. Other web sites I run PROJECTS I’VE AUTHORED Projects I’ve Authored. Below are some small open source software projects I’ve authored or helped develop. Most of them are released under a BSD or MIT license. BEN HOYT’S RESUME/CV Ben Hoyt is an experienced software engineer at Canonical. He and his wife and three daughters live in Christchurch, New Zealand.TECHNICAL WRITING
Technical Writing. Below are the programming-related articles I’ve written (see also my non-technical writings).The list includes the guest contributions I’ve written for LWN.net, and tech blog articles for several of the companies I’ve worked for. AN INTRO TO GO FOR NON-GO DEVELOPERS A slice is very nice. In Go, a slice is a reference to part of an array – the internal representation is very simple: a data pointer, a length, and a capacity. Slices are generic, so you can have a slice of float64, denoted as float64, or a slice of Person structs, Person.. You can “slice” slices with Python-like syntax, for example slice to return a new slice viewing the first PERFORMANCE COMPARISON: COUNTING WORDS IN PYTHON, GO, C++ Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust. March 2021. Summary: I describe a simple interview problem (counting frequencies of unique words), solve it in various languages, and compare performance across them. PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO pygit: Just enough of a Git client to create a repo, commit, and push itself to GitHub. April 2017. Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and pushitself to GitHub.
MUGO, A TOY COMPILER FOR A SUBSET OF GO THAT CAN COMPILE One of the slightly messy things is the “simple statement” above – with a parser that generated a syntax tree, you’d probably call Expression to parse the left-hand side, and then see if there’s an = or := for assignment, and parse the right-hand side. But we can’t call Expression, or it will compile code to fetch that expression instead of assign to it. LEARNING MORE GO AND SOME COMPUTER SCIENCE BY IMPLEMENTING You can read the full spec and grammar for littlelang on GitHub, but in short, it has the following features:. Go-like syntax, with braces required around blocks, and no semicolons in sight. Trailing commas are allowed! Dynamic typing, with all the usual suspects: nil, bool, int, str, list, map, func. Garbage collected. But thanks to Go, I didn’t have to write a GC. SYCAMORE (POETRY, ISSUE 3) In the place that is my own place, whose earth I am shaped in and must bear, there is an old tree growing, a great sycamore that is a wondrous healer of itself. Fences have been tied to it, nails driveninto it,
DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party router PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – and PERFORMANCE COMPARISON: COUNTING WORDS IN PYTHON, GO, C++ Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust. March 2021. Summary: I describe a simple interview problem (counting frequencies of unique words), solve it in various languages, and compare performance across them. For each language, I’ve included a simple, idiomatic solution as well as a moreoptimized
AN INTRO TO GO FOR NON-GO DEVELOPERS LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to A LOX INTERPRETER IMPLEMENTED IN LOX DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it into an x86-64 assembly program. It’s basically a toy, but it shows how easy it is to use the ast module to co-opt Python’s lovely syntax for your own ends. MUGO, A TOY COMPILER FOR A SUBSET OF GO THAT CAN COMPILESEE MORE ONBENHOYT.COM
DIFFERENT APPROACHES TO HTTP ROUTING IN GO Different approaches to HTTP routing in Go. July 2020. There are many ways to do HTTP path routing in Go – for better or worse. There’s the standard library’s http.ServeMux, but it only supports basic prefix matching.There are many ways to do more advanced routing yourself, including Axel Wagner’s interesting ShiftPath technique.And then of course there are lots of third-party router PLAIN ENGLISH WESTMINSTER 4. In the Bible, this second covenant is often called a testament or will (or simply “covenant” in modern Bibles). This refers to the death of Jesus, the will-maker, who promises us an inheritance that will last forever. 5. God carried out this covenant differently in the time of the law and in the time of the gospel. PYGIT: JUST ENOUGH OF A GIT CLIENT TO CREATE A REPO Summary: Recently I wrote approximately 500 lines of Python code that implements just enough of a Git client to create a repository, add files to the index, commit, and push itself to GitHub. This article gives a bit of background on my hack and walks through the code. Git is known (among other things) for its very simple object model – and PERFORMANCE COMPARISON: COUNTING WORDS IN PYTHON, GO, C++ Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust. March 2021. Summary: I describe a simple interview problem (counting frequencies of unique words), solve it in various languages, and compare performance across them. For each language, I’ve included a simple, idiomatic solution as well as a moreoptimized
AN INTRO TO GO FOR NON-GO DEVELOPERS LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React to A LOX INTERPRETER IMPLEMENTED IN LOX DON’T TRY TO SANITIZE INPUT. ESCAPE OUTPUT.SEE MORE ON BENHOYT.COM COMPILING PYTHON SYNTAX TO X86-64 ASSEMBLY FOR FUN AND Compiling Python syntax to x86-64 assembly for fun and (zero) profit. June 2017. Summary: I used Python’s built-in AST module to parse a subset of Python syntax and turn it into an x86-64 assembly program. It’s basically a toy, but it shows how easy it is to use the ast module to co-opt Python’s lovely syntax for your own ends. MUGO, A TOY COMPILER FOR A SUBSET OF GO THAT CAN COMPILESEE MORE ONBENHOYT.COM
PROJECTS I’VE AUTHORED Below are some small open source software projects I’ve authored or helped develop. Most of them are released under a BSD or MIT license. Enjoy! GoAWK is an AWK interpreter written in Go. Read about it in depth. scandir is a better directory iterator and faster os.walk BEN HOYT’S RESUME/CV Summary. I’m a software engineer with fifteen years of experience developing web applications and services, as well as providing technical leadership for small teams of software developers. I’m fluent in Go, Python, C, SQL, HTML, and English. I’ve also written aTECHNICAL WRITING
Technical Writing. Below are the programming-related articles I’ve written (see also my non-technical writings).The list includes the guest contributions I’ve written for LWN.net, and tech blog articles for several of the companies I’ve worked for. AN INTRO TO GO FOR NON-GO DEVELOPERS An intro to Go for non-Go developers. June 2020. Summary: I’ve presented an introduction to Go a few times for developers who are new to the language – this is that talk serialized as a technical article. It looks at why you might want to use Go, and gives a briefoverview of
NON-TECHNICAL WRITING Non-technical Writing. In addition to my technical writing, I also occassionally write about things more philosophical or poetic:. Review of Hillbilly Elegy contains some of my thoughts on J. D. Vance’s eye-opening and thought-provoking book. (Jul 2020) Hacker Christianity, some thoughts on the intersection between Christianity and hacker culture, as well as a retelling of the Christian PERFORMANCE COMPARISON: COUNTING WORDS IN PYTHON, GO, C++ Performance comparison: counting words in Python, Go, C++, C, AWK, Forth, and Rust. March 2021. Summary: I describe a simple interview problem (counting frequencies of unique words), solve it in various languages, and compare performance across them. For each language, I’ve included a simple, idiomatic solution as well as a moreoptimized
LEARNING ELM BY PORTING A MEDIUM-SIZED WEB FRONTEND FROM REACT Learning Elm by porting a medium-sized web frontend from React. October 2019. Summary: To learn Elm, I ported the frontend of a small site I run from React MUGO, A TOY COMPILER FOR A SUBSET OF GO THAT CAN COMPILE Mugo, a toy compiler for a subset of Go that can compile itself. Summary: This article presents Mugo, a single-pass compiler for a tiny subset of the Go programming language. It outputs (very naive) x86-64 assembly, and supports just enough of the language to implement a Mugo compiler: int and string types, slices, functions, locals, globals ZZT IN GO (USING A PASCAL-TO-GO CONVERTER) I used go build -gcflags="-e" to build the converted Go, so as to print all errors rather than just the first few, and outputted the results to an errors.txt file. Initially this file had over 800 errors in it. By the end of my automated translation journey, it had only 33 – which I then fixed up manually. SYCAMORE (POETRY, ISSUE 3) of the bark. It bears the gnarls of its history. healed over. It has risen to a strange perfection. in the warp and bending of its long growth. It has gathered all accidents into its purpose. It has become the intention and radiance of its dark fate. It is a fact, sublime, mystical and unassailable.Ben Hoyt
* HOME
* Resume/CV
* Projects
* Tech Writing
* Non-Tech
* benhoyt.com
* benhoyt@gmail.com
BEN HOYT
I’m married to the only Franci Hoyt in the world, and we and our three lovely daughters live in Christchurch, New Zealand. By day I’m a software engineer at Canonical – see my resume/CV for more info. I’ve created a few open source projects , and I enjoy writing technical and non-technicalarticles.
OTHER WEB SITES I RUN * Gifty Weddings , my side business that helps couples make simple wedding gift registries. * Aliens in the Apple is our family blog, started during our time in New York City. * Prism magazine was a small-scale print magazine I edited back in 2005-2007.Details
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0