Compare commits
3 Commits
96e99061e9
...
e2cf382fbd
Author | SHA1 | Date | |
---|---|---|---|
e2cf382fbd | |||
7faa512335 | |||
bfa3365255 |
BIN
public/img/me.jpg
Normal file
BIN
public/img/me.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 309 KiB |
|
@ -67,4 +67,20 @@ nav ul {
|
|||
justify-content: center;
|
||||
gap: 1em;
|
||||
}
|
||||
|
||||
@media only screen and (max-width : 850px) {
|
||||
|
||||
.centercol {
|
||||
box-sizing: border-box;
|
||||
width: 100vw;
|
||||
max-width: 100vw;
|
||||
padding-left: 2em;
|
||||
padding-right: 2em;
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
.titlecontainer {
|
||||
width: 100%
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
74
src/css/highlight.scss
Normal file
74
src/css/highlight.scss
Normal file
|
@ -0,0 +1,74 @@
|
|||
// https://github.com/daveyarwood/gruvbox-pygments/tree/master
|
||||
.highlight .hll { background-color: #ffffcc }
|
||||
.highlight { background: #282828; color: #ebdbb2; background-color: #282828 }
|
||||
.highlight .c { color: #928374; font-style: italic; background-color: #282828 } /* Comment */
|
||||
.highlight .err { color: #ebdbb2; background-color: #282828 } /* Error */
|
||||
.highlight .esc { color: #ebdbb2; background-color: #282828 } /* Escape */
|
||||
.highlight .g { color: #ebdbb2; background-color: #282828 } /* Generic */
|
||||
.highlight .k { color: #fe8019; background-color: #282828 } /* Keyword */
|
||||
.highlight .l { color: #ebdbb2; background-color: #282828 } /* Literal */
|
||||
.highlight .n { color: #ebdbb2; background-color: #282828 } /* Name */
|
||||
.highlight .o { color: #fe8019; background-color: #282828 } /* Operator */
|
||||
.highlight .x { color: #ebdbb2; background-color: #282828 } /* Other */
|
||||
.highlight .p { color: #ebdbb2; background-color: #282828 } /* Punctuation */
|
||||
.highlight .ch { color: #928374; font-style: italic; background-color: #282828 } /* Comment.Hashbang */
|
||||
.highlight .cm { color: #928374; font-style: italic; background-color: #282828 } /* Comment.Multiline */
|
||||
.highlight .cp { color: #8ec07c; background-color: #282828 } /* Comment.Preproc */
|
||||
.highlight .c1 { color: #928374; font-style: italic; background-color: #282828 } /* Comment.Single */
|
||||
.highlight .cs { color: #928374; font-style: italic; background-color: #282828 } /* Comment.Special */
|
||||
.highlight .gd { color: #282828; background-color: #fb4934 } /* Generic.Deleted */
|
||||
.highlight .ge { color: #83a598; text-decoration: underline; background-color: #282828 } /* Generic.Emph */
|
||||
.highlight .gr { color: #ebdbb2; font-weight: bold; background-color: #fb4934 } /* Generic.Error */
|
||||
.highlight .gh { color: #b8bb26; font-weight: bold; background-color: #282828 } /* Generic.Heading */
|
||||
.highlight .gi { color: #282828; background-color: #b8bb26 } /* Generic.Inserted */
|
||||
.highlight .go { color: #504945; background-color: #282828 } /* Generic.Output */
|
||||
.highlight .gp { color: #ebdbb2; background-color: #282828 } /* Generic.Prompt */
|
||||
.highlight .gs { color: #ebdbb2; background-color: #282828 } /* Generic.Strong */
|
||||
.highlight .gu { color: #b8bb26; font-weight: bold; background-color: #282828 } /* Generic.Subheading */
|
||||
.highlight .gt { color: #ebdbb2; font-weight: bold; background-color: #fb4934 } /* Generic.Traceback */
|
||||
.highlight .kc { color: #fe8019; background-color: #282828 } /* Keyword.Constant */
|
||||
.highlight .kd { color: #fe8019; background-color: #282828 } /* Keyword.Declaration */
|
||||
.highlight .kn { color: #fe8019; background-color: #282828 } /* Keyword.Namespace */
|
||||
.highlight .kp { color: #fe8019; background-color: #282828 } /* Keyword.Pseudo */
|
||||
.highlight .kr { color: #fe8019; background-color: #282828 } /* Keyword.Reserved */
|
||||
.highlight .kt { color: #fabd2f; background-color: #282828 } /* Keyword.Type */
|
||||
.highlight .ld { color: #ebdbb2; background-color: #282828 } /* Literal.Date */
|
||||
.highlight .m { color: #d3869b; background-color: #282828 } /* Literal.Number */
|
||||
.highlight .s { color: #b8bb26; background-color: #282828 } /* Literal.String */
|
||||
.highlight .na { color: #b8bb26; font-weight: bold; background-color: #282828 } /* Name.Attribute */
|
||||
.highlight .nb { color: #fabd2f; background-color: #282828 } /* Name.Builtin */
|
||||
.highlight .nc { color: #ebdbb2; background-color: #282828 } /* Name.Class */
|
||||
.highlight .no { color: #d3869b; background-color: #282828 } /* Name.Constant */
|
||||
.highlight .nd { color: #ebdbb2; background-color: #282828 } /* Name.Decorator */
|
||||
.highlight .ni { color: #fabd2f; background-color: #282828 } /* Name.Entity */
|
||||
.highlight .ne { color: #fb4934; background-color: #282828 } /* Name.Exception */
|
||||
.highlight .nf { color: #fabd2f; background-color: #282828 } /* Name.Function */
|
||||
.highlight .nl { color: #fb4934; background-color: #282828 } /* Name.Label */
|
||||
.highlight .nn { color: #ebdbb2; background-color: #282828 } /* Name.Namespace */
|
||||
.highlight .nx { color: #ebdbb2; background-color: #282828 } /* Name.Other */
|
||||
.highlight .py { color: #ebdbb2; background-color: #282828 } /* Name.Property */
|
||||
.highlight .nt { color: #fb4934; background-color: #282828 } /* Name.Tag */
|
||||
.highlight .nv { color: #ebdbb2; background-color: #282828 } /* Name.Variable */
|
||||
.highlight .ow { color: #fe8019; background-color: #282828 } /* Operator.Word */
|
||||
.highlight .w { color: #ebdbb2; background-color: #282828 } /* Text.Whitespace */
|
||||
.highlight .mb { color: #d3869b; background-color: #282828 } /* Literal.Number.Bin */
|
||||
.highlight .mf { color: #d3869b; background-color: #282828 } /* Literal.Number.Float */
|
||||
.highlight .mh { color: #d3869b; background-color: #282828 } /* Literal.Number.Hex */
|
||||
.highlight .mi { color: #d3869b; background-color: #282828 } /* Literal.Number.Integer */
|
||||
.highlight .mo { color: #d3869b; background-color: #282828 } /* Literal.Number.Oct */
|
||||
.highlight .sb { color: #b8bb26; background-color: #282828 } /* Literal.String.Backtick */
|
||||
.highlight .sc { color: #b8bb26; background-color: #282828 } /* Literal.String.Char */
|
||||
.highlight .sd { color: #b8bb26; background-color: #282828 } /* Literal.String.Doc */
|
||||
.highlight .s2 { color: #b8bb26; background-color: #282828 } /* Literal.String.Double */
|
||||
.highlight .se { color: #b8bb26; background-color: #282828 } /* Literal.String.Escape */
|
||||
.highlight .sh { color: #b8bb26; background-color: #282828 } /* Literal.String.Heredoc */
|
||||
.highlight .si { color: #b8bb26; background-color: #282828 } /* Literal.String.Interpol */
|
||||
.highlight .sx { color: #b8bb26; background-color: #282828 } /* Literal.String.Other */
|
||||
.highlight .sr { color: #b8bb26; background-color: #282828 } /* Literal.String.Regex */
|
||||
.highlight .s1 { color: #b8bb26; background-color: #282828 } /* Literal.String.Single */
|
||||
.highlight .ss { color: #83a598; background-color: #282828 } /* Literal.String.Symbol */
|
||||
.highlight .bp { color: #fabd2f; background-color: #282828 } /* Name.Builtin.Pseudo */
|
||||
.highlight .vc { color: #ebdbb2; background-color: #282828 } /* Name.Variable.Class */
|
||||
.highlight .vg { color: #ebdbb2; background-color: #282828 } /* Name.Variable.Global */
|
||||
.highlight .vi { color: #ebdbb2; background-color: #282828 } /* Name.Variable.Instance */
|
||||
.highlight .il { color: #d3869b; background-color: #282828 } /* Literal.Number.Integer.Long */
|
|
@ -1,4 +1,5 @@
|
|||
import './main.scss'
|
||||
import './css/main.scss'
|
||||
import './css/highlight.scss'
|
||||
import 'katex/dist/katex.min.css'
|
||||
|
||||
import { ViteSSG } from 'vite-ssg'
|
||||
|
|
50
src/pages/about.vue
Normal file
50
src/pages/about.vue
Normal file
|
@ -0,0 +1,50 @@
|
|||
<script setup lang="ts">
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<article>
|
||||
<div>
|
||||
<h2>me</h2>
|
||||
<p>My name is Rachel Lambda Samuelsson, my pronouns are she/her. I'm an undergrad at Chalmers University of Technology, studying computer science and engineering. My interests include type theory, univalent mathematics, category theory, logic, and functional programming. If I write code it is probably in Agda, Idris, or Haskell.</p>
|
||||
|
||||
<h2>this site</h2>
|
||||
<p>This site hosts my blog, a gallery of photos I've taken, and a quick informal CV.</p>
|
||||
|
||||
<h2>contact</h2>
|
||||
<ul>
|
||||
<li>email: <a href="mailto:depsterr@protonmail.com">depsterr@protonmail.com</a></li>
|
||||
<li>fedi: <a href="https://types.pl/@rachelrosen">@rachelrosen@types.pl</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<figure>
|
||||
<h2>picture</h2>
|
||||
<img src="/img/me.jpg" alt="a picture of me">
|
||||
<figcaption>rachel in the flesh</figcaption>
|
||||
</figure>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
article {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: top;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
@media only screen and (max-width : 850px) {
|
||||
article {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: top;
|
||||
}
|
||||
|
||||
figure {
|
||||
margin: 1em 0 0 0;
|
||||
width: 70%;
|
||||
max-width: 70%;
|
||||
}
|
||||
}
|
||||
</style>
|
|
@ -61,9 +61,15 @@ In each step we move the window by replacing the first slot in the window by wha
|
|||
What does this have to do with mathematics, and this beautiful proof that I have promised? We shall begin to translate this moving window into the language of mathematics, our window is a pair of numbers, so why not represent it as a vector. Furthermore, we may view sliding our window one step as a function $S$ from vectors to vectors. This poses an interesting question: is this function a linear transformation?
|
||||
|
||||
$$
|
||||
S \left(\begin{bmatrix} a & b \end{bmatrix}\right) \\
|
||||
+ S\left(\begin{bmatrix} c & d \end{bmatrix}\right) \\
|
||||
= \begin{bmatrix} b a + b \end{bmatrix} \\
|
||||
S \left(\begin{bmatrix} a & b \end{bmatrix}\right)
|
||||
$$
|
||||
$$
|
||||
+ S\left(\begin{bmatrix} c & d \end{bmatrix}\right)
|
||||
$$
|
||||
$$
|
||||
= \begin{bmatrix} b a + b \end{bmatrix}
|
||||
$$
|
||||
$$
|
||||
+ \begin{bmatrix} d c + d \end{bmatrix}
|
||||
$$
|
||||
|
||||
|
|
|
@ -76,43 +76,21 @@ data Inst
|
|||
|
||||
All stacks grow from right to left, that is, the left most element is at the top of the stack.
|
||||
|
||||
{% katexmm %}
|
||||
<table>
|
||||
<tr>
|
||||
<th align=center colspan="3">Before</th><th align=center colspan="3">After</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Control</th><th>Env</th><th>Stack</th><th>Control</th><th>Env</th><th>Stack</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Const i : c</td><td>e</td><td>s</td><td>c</td><td>e</td><td>i : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Global i : c</td><td>e</td><td>s</td><td>c</td><td>e</td><td>Globals[i] : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Local i : c</td><td>e</td><td>s</td><td>c </td><td> e</td><td>e[i] : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Closure n a : $c_1$ ... $c_n$ : c</td><td>e</td><td>s</td><td>c</td><td>e</td><td>Closure a {e} [$c_1$ ... $c_n$] : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>App : c</td><td>e</td><td>Closure {e'} [c'] : v : s</td><td>c'</td><td>v : e'</td><td>Closure$^0$ {e} [c] : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>App : c</td><td>e</td><td>Closure$^n$ {e'} [c'] : v : s</td><td>c</td><td>e</td><td>Closure$^{n - 1}$ {v : e'} [c'] : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Ret : c </td><td>e</td><td>v : Closure$^0$ \{e'\} [c'] : s </td><td> c'</td><td>e' </td><td> v : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Dup : c</td><td>e</td><td>v : s</td><td>c</td><td>e</td><td>v : v : s</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Add : c </td><td>e</td><td>v : s</td><td>c</td><td>e</td><td>v + v : s</td>
|
||||
</tr>
|
||||
</table>
|
||||
{% endkatexmm %}
|
||||
<style>
|
||||
th { text-align: left; }
|
||||
</style>
|
||||
| Before | | | After | | |
|
||||
| ----------------------------------- | --- | -------------------------------- | ------- | ------ | --------------------------------------- |
|
||||
| Control | Env | Stack | Control | Env | Stack |
|
||||
| Const i : c | e | s | c | e | i : s |
|
||||
| Global i : c | e | s | c | e | Globals\[i\] : s |
|
||||
| Local i : c | e | s | c | e | e\[i\] : s |
|
||||
| Closure n a : $c\_1$ ... $c\_n$ : c | e | s | c | e | Closure a {e} \[$c\_1$ ... $c\_n$\] : s |
|
||||
| App : c | e | Closure {e'} \[c'\] : v : s | c' | v : e' | Closure⁰ {e} \[c\] : s |
|
||||
| App : c | e | Closureⁿ {e'} \[c'\] : v : s | c | e | Closureⁿ⁻¹ {v : e'} \[c'\] : s |
|
||||
| Ret : c | e | v : Closure⁰ {e'} \[c'\] : s | c' | e' | v : s |
|
||||
| Dup : c | e | v : s | c | e | v : v : s |
|
||||
| Add : c | e | v : s | c | e | v + v : s |
|
||||
|
||||
### An example
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user