199 lines
9.2 KiB
Text
199 lines
9.2 KiB
Text
(article
|
||
(h1 "beginning work on LATL")
|
||
(p
|
||
"a little introduction to a project i started thinking about in early 2020,
|
||
as i was learning how to do web development and wanted to try my hand at
|
||
combining some hobbies.")
|
||
(section
|
||
(hgroup
|
||
(h2 "what even is this?")
|
||
(p (em "of linguistics and hubris."))
|
||
(hr))
|
||
(p
|
||
"so, when i was a wee little child, i discovered language. i was one of
|
||
those kids who picked up reading real quick (like before i could form
|
||
memories) and just have always been fascinated by what those words and
|
||
symbols do. like, most wee little children discover language, but some
|
||
wee little children get given the lord of the rings when they're ten or
|
||
something and get into the narrative and the characters, sure. but
|
||
those appendices.... there's .. a language here? called quenya? and
|
||
this tolkien guy just made this up? "
|
||
(small "this is not in fact how i talked as a child, just go with me."))
|
||
(p
|
||
"so, i did the precocious kid thing and said to myself \"if this dead
|
||
british weirdo (who's like really into the concept of royalty) can
|
||
make a whole new language, then surely i can to.\"")
|
||
(p
|
||
"i did not, in fact, make a language. i made a relex of the language i
|
||
already spoke (my own peculiar idiolect of u.s. english,) but we all
|
||
gotta start somewhere." )
|
||
(p
|
||
"for a long time the internet to me was mostly "
|
||
(a ((href "https://listserv.brown.edu/archives/conlang.html"))
|
||
"the brown university conlang listserv.")
|
||
" here i learned about different phonology, what the heck
|
||
morphosyntactic alignment is, diachronicity and how different
|
||
languages can be related. i got exposed to awkwords and sca2 (tools
|
||
for generating words and modeling changes to those words.) but i
|
||
never interacted with ppl much. i was a kid and the ppl in there
|
||
really knew their stuff, and i never much felt comfy with the idea
|
||
of being just "
|
||
(em "in public") " on the internet like that.")
|
||
(p
|
||
"anyway i got better at making languages and learning about how
|
||
language works, and it's just been a (at times more consistent, at
|
||
times less) hobby of mine for most of my life.")
|
||
(p
|
||
"flash forward to a few years ago, i'm working on a language that has
|
||
turned into the passion project that i've spend the majority of my
|
||
conlanging on and i'm getting frustrated with my tools. i want to do
|
||
more complex, phonological-feature-aware, sound change rules; i want
|
||
a tighter feedback loop; i want to see how a derivational pattern at
|
||
one stage in a parent form of a language branches out or collapses
|
||
into different derivational patterns in a child language.")
|
||
(p
|
||
"all was not well in my conlanging.")
|
||
(p
|
||
"i would need to " (strong "do some programming."))
|
||
(p
|
||
"the thing is, i had just learned javascript. (it was a tech bootcamp.
|
||
someday i'll talk about my ~feelings~ about ~that~, but not here, not
|
||
now.) i had built a few little toy web apps, and i was not ready to
|
||
execute on a vision for a multi-purpose conlanging tool that was
|
||
beginning to take shape in my head.")
|
||
(p "i tried anyway.")
|
||
(p "and i made "
|
||
(a ((href "settled/1"))
|
||
"a bad first draft of a sound change tool."))
|
||
(p
|
||
"there's an ebnf grammar in that project somewhere! the hubris i
|
||
had then, to think i could make a little javascript-backed
|
||
language tool with all of the bells and whistles i needed! with
|
||
the knowledge that i had then! (or more accurately, didn't have)")
|
||
(br)
|
||
(p "but now..."))
|
||
(section
|
||
(hgroup
|
||
(h2 "reviving this project")
|
||
(p (em "whatcha gonna do sorrel?"))
|
||
(hr))
|
||
(p "i'm still not ready.")
|
||
(p
|
||
"but at least, today i'm forgoing bells and whistles for
|
||
execution models. core abstractions. experience using "
|
||
(a ((href "https://racket-lang.org"))
|
||
"a (programming) language-oriented programming language")
|
||
" maybe. there's a lot to think about.")
|
||
(p
|
||
"so, i'm going to try reviving this project. or, more accurately,
|
||
reimagining this project. from the little sound change tool that
|
||
was merely an unusably buggy iteration on tools that other
|
||
conlangers had executed better, to a more robust environment for
|
||
conlanging. one which gives language nerds the power to solve
|
||
all of their language nerding problems in one runtime, with an
|
||
extensible and reflective interface. and which is written in such
|
||
a way, with the appropriate abstractions, that lanuage nerdy
|
||
hackers can hack their own tools on top of it.")
|
||
(p
|
||
"and i'm going to be doing "
|
||
(a ((href "https://www.recurse.com/"))
|
||
"a hecking hacking retreat")
|
||
" about it. i'll spend some full-time programming days making a
|
||
goofy little thing for goofy little language nerds surrounded by
|
||
goofy programming nerds doing whatever rad things they happen
|
||
to be getting up to when i happen to be there.")
|
||
(p
|
||
"like many of the communities i am a part of, i am a quiet part of
|
||
the conlanging community. so, we'll see how this goes. maybe it
|
||
is only ever something of interest to me and the conlangers i
|
||
interact with in meatspace. maybe it only teaches me some things
|
||
about designing and building a tool of the type that i'm designing
|
||
and building. hoooopefully it is helpful in a way to other
|
||
conlangers such that it evolves beyond what i could do on
|
||
my own (cause i ain't no whiz kid 10x programmer.)")
|
||
(p
|
||
"but that's all me getting ahead of myself (as is often my wont.)
|
||
first! to pack for the trip!"))
|
||
(section
|
||
(hgroup
|
||
(h2 "packing for the trip")
|
||
(p (em "a biggg heap of things to expand"))
|
||
(hr))
|
||
(p
|
||
"i'm just gonna fly right through these. there's going to be a lot
|
||
to read up on, to explore, to think and talk through, before it
|
||
gets time to prototyping and to building a workable tool. so,
|
||
here's the very start of the thinking-in-public. each of these
|
||
little thoughts is going to get at least it's own writeup (if not
|
||
several) and i'll update with additional sections and links to
|
||
the writeups as i go.")
|
||
(section
|
||
(h3 "notes on the goals")
|
||
(p
|
||
"it's good to have goals! to define what it even is yr tring to
|
||
do. so here's my attempt. my goal is to create a foss+ working
|
||
runtime that *can* serve as a singular tool for conlangers with
|
||
some basic programming capacity. it should be linguistically
|
||
*theory neutral* to the extant that such a thing is possible.
|
||
it should allow for the definition of all relevant structures
|
||
of a language *in code* and support the construction of grammars,
|
||
dictionaries, text documents and (stretch goal) non-programmer
|
||
friendly tools *from code*. it should support phonological,
|
||
lexical, syntactic, morphological, semantic, etc transformations
|
||
across different 'epochs' be they diachronic or synchronic.
|
||
these transformations should work on transformations, ie
|
||
morphological transformations should themselves be transformed
|
||
by phonological transformations. users of the tool should be
|
||
able to edit their work and see the consequences of their changes
|
||
quickly. hopefully, this can all happen on the web, i guess,
|
||
cause ppl like using their browser as the everything app. ")
|
||
(section
|
||
(h3 "notes on existing tools")
|
||
(p
|
||
"i'm going to talk a bunch about existing tools made by
|
||
conlangers or made for professional linguists and used by
|
||
conlangers or just yr regular old spreedsheets and such. i'm
|
||
going to be doing some research about how conlangers do their
|
||
conlanging, lest this truly be a just-for-me type project."))
|
||
(section
|
||
(h3 "notes on primitives")
|
||
(p
|
||
"i think some interesting things start to bubble out of some of
|
||
those goals up there. like the idea of supporting a bunch of
|
||
different kinds of transformations that should themselves be
|
||
transformable. the primitives we're working with have to work
|
||
below the level of \"lexeme\" or \"phoneme\" to have something
|
||
abstract that can apply to both. i'm not going to get into
|
||
specifics even a little bit at this point-you'll have to stay
|
||
tuned for more.")))
|
||
(section
|
||
(h3 "notes on execution model")
|
||
(p
|
||
"this is going to be some crunchy computer language stuff. i'm
|
||
going to make some arguments for some things that (it is my
|
||
belief) fall out of these goals. things like dynamic typing.
|
||
things like reflectivity (this is sooo important it gets its
|
||
own section.) things like lazy evaluation (because languages
|
||
are big and sometimes you only want to look at a subset of a
|
||
language.) means of combination: propositions.")
|
||
(section
|
||
(h3 "notes on reflectivity and interaction"))
|
||
(section
|
||
(h3 "notes on portability"))
|
||
(section
|
||
(h3 "notes on the substratum (racket?)")))
|
||
(section
|
||
(hgroup
|
||
(h2 "about the name")
|
||
(p (em "it's pronouced ˈlæ.ɾɫ̩"))
|
||
(hr))
|
||
(p
|
||
"i don't know dude, naming things is hard. it's a working name,
|
||
it works good as an extension. "
|
||
(code "my-conlang.latl") "anyone?")
|
||
(p
|
||
"i also just like syllabic laterals? they sound neat to me. the
|
||
official initialism is _l_inguistic _a_nalytic _t_ransformation
|
||
_l_anguage, but it also double entendres to _l_ower _a_nterior
|
||
_t_emporal _l_obe, so that's just kind of fun.")
|
||
(p "maybe it'll have a different name some day, idk"))))
|