Compare commits
2 commits
4011469048
...
c5ad5e7b7b
Author | SHA1 | Date | |
---|---|---|---|
c5ad5e7b7b | |||
130f36989d |
15 changed files with 120 additions and 6 deletions
100
archive/feature-change-applier.scm
Normal file
100
archive/feature-change-applier.scm
Normal file
|
@ -0,0 +1,100 @@
|
||||||
|
(article
|
||||||
|
(hgroup
|
||||||
|
(h1 "feature change applier")
|
||||||
|
(p (em "a first attempt at a conlanging tool")))
|
||||||
|
(section
|
||||||
|
(hgroup
|
||||||
|
(h2 "what is this?")
|
||||||
|
(p
|
||||||
|
(em
|
||||||
|
"a tool for conlanging: a feature-based sound-change applier
|
||||||
|
capable of applying multiple sets of rules at once."))
|
||||||
|
(hr))
|
||||||
|
(p
|
||||||
|
"you can try it out here: "
|
||||||
|
(a ((href "https://sorrelbri.github.io/feature-change-applier/"))
|
||||||
|
"feature change applier app"))
|
||||||
|
(img ((src "/static/img/settled/1/fca.jpg")
|
||||||
|
(alt "an image of Feature Change Applier application. visible
|
||||||
|
are labeled sections. 'proto language lexicon' is a text
|
||||||
|
field with nonsense weirds. 'phonetic features' is a list
|
||||||
|
of binary values shuch as '+ back' / '- back' and
|
||||||
|
characters representing associated sounds like 'a / u / ɯ'
|
||||||
|
/ 'ə', 'epoch 1' is a text field with a list of phonetic
|
||||||
|
rules such as
|
||||||
|
'[+ occlusive - nasal]>[+ occlusive + nasal]/n_.' and
|
||||||
|
buttons to 'Remove epoch 1' or 'Add Epoch'. 'modeling
|
||||||
|
options' is a single selected radio button labeled
|
||||||
|
'Default output' with buttons labeled 'Run Changes' and
|
||||||
|
'Clear Output'. 'Results of Run' is a list headed 'epoch
|
||||||
|
1' and containing newline separated words 'annɯ anat ant
|
||||||
|
annɯ tʰa nnɯ")))
|
||||||
|
(h3 "an unfinished project")
|
||||||
|
(p
|
||||||
|
"some background on conlanging and my interst in conlanging software
|
||||||
|
can be found in this "
|
||||||
|
(a ((href "/unsettled/1"))
|
||||||
|
"introductory post about conlanging software"))
|
||||||
|
(p
|
||||||
|
"this project was initially intended to function as a sound change
|
||||||
|
applier: a software tool that takes as input a list of lexical items
|
||||||
|
in a language and a list of sound change rules and produces as
|
||||||
|
output a new list of lexical items resulting from the application of
|
||||||
|
each rule to each of the lexical items in the input. more info about
|
||||||
|
sound change appliers will be available: "
|
||||||
|
(a ((href "/unsettled/?"))
|
||||||
|
"[pending] review of existing conlanging tools"))
|
||||||
|
(p
|
||||||
|
"there are two ways in which i sought to extend the functionality of
|
||||||
|
the typical sound change applier: through feature-based rules, and
|
||||||
|
through the processing of multiple rule sets at one time. "
|
||||||
|
(a ((href "https://en.wikipedia.org/wiki/Distinctive_feature"))
|
||||||
|
"phonological features")
|
||||||
|
" are proposed binary attributes of phonology that can be used to
|
||||||
|
distinguish different phonemes. [+/- nasal] is the distinguishing
|
||||||
|
feature in the minimal pair of phones [n][d]. the processing of
|
||||||
|
multiple rule sets is accomplished in this project via the notion
|
||||||
|
of an 'epoch.' at least one epoch must be defined, which takes as
|
||||||
|
its input the initial lexicon. any additional epochs must have
|
||||||
|
their input lexicons configured by the user, but they will default
|
||||||
|
to running in sequence. what this allows is for 'snapshots' of
|
||||||
|
lexicons between suites of rules (analogous to 'intermediate'
|
||||||
|
phases in historical linguistics, such as old english>middle
|
||||||
|
english>early modern english>modern english.) this also allows for
|
||||||
|
comparisons of different rule sets or the simulation of sound
|
||||||
|
changes across a family of related languages (analogous to vulgar
|
||||||
|
latin>italo-western, vulgar-latin>eastern romance, vulgar
|
||||||
|
latin>southern romance)")
|
||||||
|
(p
|
||||||
|
"both of these additional features are present, although the app is
|
||||||
|
quite buggy and unreliable"))
|
||||||
|
(section
|
||||||
|
(hgroup
|
||||||
|
(h2 "how does it work?")
|
||||||
|
(p (em "i'll tell you what i remember"))
|
||||||
|
(hr))
|
||||||
|
(p
|
||||||
|
"i made this a few years ago, right after i first learning how to
|
||||||
|
write web apps and so i used the tools that i knew a few years ago.
|
||||||
|
this means that it's javascript! specifically, a react app, where
|
||||||
|
all the fun processing stuff happens via the react hooks useReducer
|
||||||
|
pattern. "
|
||||||
|
(a
|
||||||
|
((href
|
||||||
|
"https://github.com/sorrelbri/feature-change-applier/tree/sj_latl/src/reducers"
|
||||||
|
)) "all of the reducers are here"))
|
||||||
|
(p
|
||||||
|
"at the end of my meaningful work on the project, i started using a "
|
||||||
|
(a ((href "https://nearley.js.org/"))
|
||||||
|
"javascript earley parser called nearley")
|
||||||
|
" as i started conceptualizing the tool as just one component in a
|
||||||
|
larger suite of tools i hoped to create. the language part never got
|
||||||
|
very far--writing a language is hard! writing a language when you've
|
||||||
|
not had significant programming experience is hard! ill advised? "
|
||||||
|
(a
|
||||||
|
((href
|
||||||
|
"https://github.com/sorrelbri/feature-change-applier/blob/sj_latl/src/utils/latl/grammar.ne"))
|
||||||
|
"there's the start of something like an ebnf grammar for the
|
||||||
|
project"))
|
||||||
|
(p
|
||||||
|
"this project isn't done! and it never will be!")))
|
|
@ -1,4 +1,5 @@
|
||||||
title,link,summary,published,updated
|
title,link,summary,published,updated
|
||||||
|
feature-change-applier,https://oxaliq.net/settled/1,a first attempt at a conlanging tool,2024-01-25T16:26:10,
|
||||||
beginning latl,https://oxaliq.net/unsettled/1,beginning the process of thinking through an environment for conlanging and other language shenanigans,2024-01-18T22:39:00,
|
beginning latl,https://oxaliq.net/unsettled/1,beginning the process of thinking through an environment for conlanging and other language shenanigans,2024-01-18T22:39:00,
|
||||||
now,https://oxaliq.net/now,what the author of this site is up to (not computer things),2024-01-18T22:22:03,
|
now,https://oxaliq.net/now,what the author of this site is up to (not computer things),2024-01-18T22:22:03,
|
||||||
contact,https://oxaliq.net/contact,how to talk to me,2024-01-18T22:21:26,
|
contact,https://oxaliq.net/contact,how to talk to me,2024-01-18T22:21:26,
|
||||||
|
|
|
|
@ -1 +1,2 @@
|
||||||
id,headline,description,history->
|
id,headline,description,history->
|
||||||
|
1,feature-change-applier,a first attempt at a conlanging tool,2024-01-25T16:26:10
|
|
|
@ -1,5 +1,6 @@
|
||||||
tags,->
|
tags,->
|
||||||
about,root/now,root/contact,root/very-earnest-disclaimer,root/this,root/about
|
about,root/now,root/contact,root/very-earnest-disclaimer,root/this,root/about
|
||||||
latl,unsettled/1
|
latl,unsettled/1
|
||||||
conlang,unsettled/1
|
conlang,settled/1,unsettled/1
|
||||||
programming-language,unsettled/1
|
programming-language,unsettled/1
|
||||||
|
tool,settled/1
|
|
0
in-progress/documentation-driven-development.scm
Normal file
0
in-progress/documentation-driven-development.scm
Normal file
0
in-progress/latl-primitives.scm
Normal file
0
in-progress/latl-primitives.scm
Normal file
0
in-progress/syntax-considered-harmful.scm
Normal file
0
in-progress/syntax-considered-harmful.scm
Normal file
|
@ -1 +1 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title>λ.oxaliq.net</title><link rel="self" href="https://oxaliq.net/feed.atom"/><updated>2024-01-18T22:39:00</updated><author><name>sorrel</name></author><id>https://oxaliq.net</id><entry><title>beginning latl</title><link href="https://oxaliq.net/unsettled/1"/><id>https://oxaliq.net/unsettled/1</id><content src="https://oxaliq.net/unsettled/1" type="text/html"></content><summary>beginning the process of thinking through an environment for conlanging and other language shenanigans</summary><published>2024-01-18T22:39:00</published><updated></updated></entry><entry><title>now</title><link href="https://oxaliq.net/now"/><id>https://oxaliq.net/now</id><content src="https://oxaliq.net/now" type="text/html"></content><summary>what the author of this site is up to (not computer things)</summary><published>2024-01-18T22:22:03</published><updated></updated></entry><entry><title>contact</title><link href="https://oxaliq.net/contact"/><id>https://oxaliq.net/contact</id><content src="https://oxaliq.net/contact" type="text/html"></content><summary>how to talk to me</summary><published>2024-01-18T22:21:26</published><updated></updated></entry><entry><title>very earnest disclaimer</title><link href="https://oxaliq.net/very-earnest-disclaimer"/><id>https://oxaliq.net/very-earnest-disclaimer</id><content src="https://oxaliq.net/very-earnest-disclaimer" type="text/html"></content><summary>being earnest in the streets</summary><published>2024-01-18T22:20:50</published><updated></updated></entry><entry><title>this</title><link href="https://oxaliq.net/this"/><id>https://oxaliq.net/this</id><content src="https://oxaliq.net/this" type="text/html"></content><summary>the site this bitch made</summary><published>2024-01-18T22:19:43</published><updated></updated></entry><entry><title>about</title><link href="https://oxaliq.net/about"/><id>https://oxaliq.net/about</id><content src="https://oxaliq.net/about" type="text/html"></content><summary>about the bitch who made this site</summary><published>2024-01-18T21:56:45</published><updated></updated></entry></feed>
|
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title>λ.oxaliq.net</title><link rel="self" href="https://oxaliq.net/feed.atom"/><updated>2024-01-25T16:26:10</updated><author><name>sorrel</name></author><id>https://oxaliq.net</id><entry><title>feature-change-applier</title><link href="https://oxaliq.net/settled/1"/><id>https://oxaliq.net/settled/1</id><content src="https://oxaliq.net/settled/1" type="text/html"></content><summary>a first attempt at a conlanging tool</summary><published>2024-01-25T16:26:10</published><updated></updated></entry><entry><title>beginning latl</title><link href="https://oxaliq.net/unsettled/1"/><id>https://oxaliq.net/unsettled/1</id><content src="https://oxaliq.net/unsettled/1" type="text/html"></content><summary>beginning the process of thinking through an environment for conlanging and other language shenanigans</summary><published>2024-01-18T22:39:00</published><updated></updated></entry><entry><title>now</title><link href="https://oxaliq.net/now"/><id>https://oxaliq.net/now</id><content src="https://oxaliq.net/now" type="text/html"></content><summary>what the author of this site is up to (not computer things)</summary><published>2024-01-18T22:22:03</published><updated></updated></entry><entry><title>contact</title><link href="https://oxaliq.net/contact"/><id>https://oxaliq.net/contact</id><content src="https://oxaliq.net/contact" type="text/html"></content><summary>how to talk to me</summary><published>2024-01-18T22:21:26</published><updated></updated></entry><entry><title>very earnest disclaimer</title><link href="https://oxaliq.net/very-earnest-disclaimer"/><id>https://oxaliq.net/very-earnest-disclaimer</id><content src="https://oxaliq.net/very-earnest-disclaimer" type="text/html"></content><summary>being earnest in the streets</summary><published>2024-01-18T22:20:50</published><updated></updated></entry><entry><title>this</title><link href="https://oxaliq.net/this"/><id>https://oxaliq.net/this</id><content src="https://oxaliq.net/this" type="text/html"></content><summary>the site this bitch made</summary><published>2024-01-18T22:19:43</published><updated></updated></entry><entry><title>about</title><link href="https://oxaliq.net/about"/><id>https://oxaliq.net/about</id><content src="https://oxaliq.net/about" type="text/html"></content><summary>about the bitch who made this site</summary><published>2024-01-18T21:56:45</published><updated></updated></entry></feed>
|
1
source/settled/1.scm
Normal file
1
source/settled/1.scm
Normal file
File diff suppressed because one or more lines are too long
|
@ -1 +1 @@
|
||||||
'(article (hgroup (h1 "settled* thoughts") (p (em "*-ish, something like a portfolio of projects"))) (h3 "the thoughts") (p "there's nothing here yet"))
|
'(article (hgroup (h1 "settled* thoughts") (p (em "*-ish, something like a portfolio of projects"))) (h3 "the thoughts") (div ((class "post-preview")) (h4 "feature-change-applier") (p "a first attempt at a conlanging tool") (a ((href "/settled/1")) "go! to feature-change-applier page")))
|
|
@ -1 +1 @@
|
||||||
'(article (hgroup (h1 "stuff what's tagged like " (em "#conlang")) (p (em "everything (or maybe just some things) i've ever said about " (strong "#conlang")))) (h3 "the thoughts") (div ((class "post-preview")) (h4 "beginning latl") (p "beginning the process of thinking through an environment for conlanging and other language shenanigans") (a ((href "1")) "go! to beginning latl page")))
|
'(article (hgroup (h1 "stuff what's tagged like " (em "#conlang")) (p (em "everything (or maybe just some things) i've ever said about " (strong "#conlang")))) (h3 "the thoughts") (div ((class "post-preview")) (h4 "feature-change-applier") (p "a first attempt at a conlanging tool") (a ((href "1")) "go! to feature-change-applier page")) (div ((class "post-preview")) (h4 "beginning latl") (p "beginning the process of thinking through an environment for conlanging and other language shenanigans") (a ((href "1")) "go! to beginning latl page")))
|
|
@ -1 +1 @@
|
||||||
'(article (hgroup (h1 "all the tags") (p (em "a categorical mess for your perusal"))) (h3 "the thoughts") (div ((class "post-preview")) (h4 "about") (p "posts about about") (a ((href "/tagged/about")) "go! to about page")) (div ((class "post-preview")) (h4 "latl") (p "posts about latl") (a ((href "/tagged/latl")) "go! to latl page")) (div ((class "post-preview")) (h4 "conlang") (p "posts about conlang") (a ((href "/tagged/conlang")) "go! to conlang page")) (div ((class "post-preview")) (h4 "programming-language") (p "posts about programming-language") (a ((href "/tagged/programming-language")) "go! to programming-language page")))
|
'(article (hgroup (h1 "all the tags") (p (em "a categorical mess for your perusal"))) (h3 "the thoughts") (div ((class "post-preview")) (h4 "about") (p "posts about about") (a ((href "/tagged/about")) "go! to about page")) (div ((class "post-preview")) (h4 "latl") (p "posts about latl") (a ((href "/tagged/latl")) "go! to latl page")) (div ((class "post-preview")) (h4 "conlang") (p "posts about conlang") (a ((href "/tagged/conlang")) "go! to conlang page")) (div ((class "post-preview")) (h4 "programming-language") (p "posts about programming-language") (a ((href "/tagged/programming-language")) "go! to programming-language page")) (div ((class "post-preview")) (h4 "tool") (p "posts about tool") (a ((href "/tagged/tool")) "go! to tool page")))
|
1
source/tagged/tool.scm
Normal file
1
source/tagged/tool.scm
Normal file
|
@ -0,0 +1 @@
|
||||||
|
'(article (hgroup (h1 "stuff what's tagged like " (em "#tool")) (p (em "everything (or maybe just some things) i've ever said about " (strong "#tool")))) (h3 "the thoughts") (div ((class "post-preview")) (h4 "feature-change-applier") (p "a first attempt at a conlanging tool") (a ((href "1")) "go! to feature-change-applier page")))
|
BIN
static/img/settled/1/fca.jpg
Normal file
BIN
static/img/settled/1/fca.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 44 KiB |
|
@ -145,3 +145,12 @@ li.tag-item {
|
||||||
margin: 0 6;
|
margin: 0 6;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
width: 96%;
|
||||||
|
margin: 2%;
|
||||||
|
border-color: var(--foreground-color);
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 2px;
|
||||||
|
border-radius: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue