This is.. I don't even know if this can really be called a con-lang, since it's missing a lot of things, but it's the project I've worked on for the last month and this is as far as I've developed it.
I could've done so much more than this! I was just very indecisive and I slowed down towards the end.
Here's the final draft, if you care.
[todo:glossary]
[0]
0 is the "null" digit, so it's normally just the end of a suffix/word/sentence. There are times when it isn't, in which the word itself is for the category of word.
// as of 2025DEC01 (v0)
I decided to use hexadecimal digits as the units that make up "words". There's no real reason for it beyond the fact that I couldn't decide on what sounds to use.
After that, I made it so that every word must be six digits long — so that they could be encoded into html/css colors.
Then, I defined a range for special words that I called "suffixes": 1-7. [0] I decided that suffixes would only fill half of the available space, so that it would be possible to encode two at once.
Suffixes
Suffixes
I've defined six of the seven possible suffix types:
| Header | Word Type |
| 0001 | 1xx | Noun |
| 0010 | 2xx | Verb |
| 0011 | 3xx | Adjective |
| 0100 | 4xx | "Reserved" |
| 0101 | 5xx | Integer |
| 0111 | 7xx | Adverb |
The first 3 and last one are pretty simple, so I'll get to their rules now.
1xx ~ 3xx, 7xx
I added an extra dimension to nouns called "Domain", but nothing new. This "Domain" dimension is simply for whether something is inside or outside. [of what?]
Nouns have these two planes, the first for the middle nybble and the second for the right one:
in the html i invert the order because i'm using css float
i could use flexbox or have a table of tables to solve this
but it workd so idrc
| right | Gender |
Person | Animal | Object | Concept |
| Number | Singular | 4 | 3 | 2 | 1 |
| Paucal | 8 | 7 | 6 | 5 |
| Plural | C | B | A | 9 |
| middle | Case |
NOM | ACC | DAT | LAT | GEN | VIA | REFL |
| Domain | Internal | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| External | 8 | 9 | A | B | C | D | E |
Verbs also have two planes:
| right | Tense |
Past | Present | Future |
| Aspect | Imperfective | 1 | 2 | 3 |
| Habitual | 4 | 5 | 6 |
| Perfective | 7 | 8 | 9 |
| middle | Mood |
Indicative | Potential | Negative |
| Mood | Indicative | 1 | 2 | 3 |
| Potential | 4 | 5 | 6 |
| Negative | 7 | 8 | 9 |
Adjectives and Adverbs simply inherit the dimensions of what they modify, so there is no table for these.
4xx ["Reserved"]
This type was originally for conjunctions and such, but it became general miscellany as I realized there aren't actually enough conjunctions that serve different functions to fill 225 grid spaces. So there are instead 15 categories with 15 values. [←[0]] I'll go through these categories and the words in them.
41x - Conjunction
- For, Because
- So, Therefore
- And, With
- Xor
- Or
- Yet, Regardless
- But, However
- Despite
42x - Preposition
| x | 00 | 01 | 10 | 11 |
| 00 | [0] | At | Towards | From |
| 01 | Within | Among | Beside, Near | Without |
| 10 | Left, Port | Under, Below | Over, Above | Right, Starboard |
| 11 | Afront | Behind |
43x - Deixis
- Proximal [here, this, now, i/we, etc.]
- Medial [there, that, then, th/you, etc.]
- Distal [yonder, it, yon, s/he/they, etc.]
44x -
1. Sun
2. Moon
3. Star
45x - Length of Time
- 1. Millisecond, Tick
- 2. Second
- 3. Minute
- 4. Hour
- 5. Day
- 6. Week
- 7. Month
- 8. Season
- 9. Year
- A. Century
- B. Millenium
46x - Size, Magnitude
1 = smallest; F = largest
47x - Non-animal
- Microscopic Lifeform
- Fungus
- Plant
48x - Animal
| x | 00 | 01 | 10 | 11 |
| 00 | [0] | Feline | Vulpine | Canine |
| 01 | Insect, Bug | Mouse, Rat | Lagomorph | Deer |
| 10 | Horse | Cattle | Goat | Moose |
| 11 | Ursine | Bird | Penguin | Fish |
49x -
4Ax - State of Matter
- Gas
- Liquid
- Solid
4Bx - Matter Type
| x | 00 | 01 | 10 | 11 |
| 00 | [0] | Air | Water | Rock, Stone |
| 01 | Metal | Plasma, Lightning | Sand, Dirt, Soil | Wood |
| 10 | Paper | Light, Color | Heat, Fire | Squishy Thing |
| 11 | Fur, Fabric, Cloth | | | Leaf, Grass |
4Cx - Tool, Method
| x | 00 | 01 | 10 | 11 |
| 00 |
[0] |
Body, Vessel |
Head, Mind |
Eye |
|---|
| 01 |
Mouth |
Hand, Grip, Vice |
Arm, Strength |
Foot, Foundation |
|---|
| 10 |
Leg, Pillar |
Spear, Arrow |
Blade |
Hammer |
|---|
| 11 |
Wheel, Gear |
Direction, Way, Path |
Money |
Axiom, Tenet |
4Dx - Place, Location
- 1. House, Room
- 2. Office
- 3. Park
- 4. Library
- 5. Bar
- 6. Kitchen
- 7. Restaurant
- 8. Planet
- 9. Solar System
- A. Galaxy
- B. Universe
4Ex - Verb
- 1. Have, Own
- 2. Hug
- 3. Sleep
- 4. Speak
- 5. Wake
- 6. Stop
- 7. Move
4Fx - State, Quality
- 1. Dead, False
- 2. Bad, Negative
- 3. Wet
- 4. Dry
- 5. Dizzy, Confused
- 6. Fast
- 7. Neutral
- 9. Slow
- A. Silly
- E. Good, Positive
- F. Alive, True
I still don't really like this as it is, and I'm not sure I really need some of these words at all. I'm obviously missing a few concepts [and omitting a few others I don't want here].
It's likely that when someone other than myself sees this, they will see many flaws in it and try to make at a better version [or perhaps help me improve it for v1].
And toki pona already exists, why am I trying [and failing] rebuild it from scratch for this one "suffix" type?
5xx [Integer]
These are very simple compared to the one above. Since the two variable digits in this suffix type comprise one byte, you get 255 possible positive integers. To be able to use all of them, [0] will not be employed for this type. 500 is the integer 0.
Hmm, but what if you use the ieee754 standard? uhhhh I didn't think about that until rushing to finish this, sorry.
Words
So I didn't actually manage to put any words in the language as of yet [i tried to fill the 4xx type but still failed in that case]. But I do think it's possible to divide these into three parts.
The first part is the leftmost/first nybble, or the header. Headers of value below 8 are labeled "suffixes" and those 8 and higher are "words". There was no real reason for me to choose this boundary but I made it that way.
"Suffixes" are limited to half of the word length to cram two into the same space, so their word content is stored in one byte.
"Words" use the full span of 6 digits, so their word content utilizes 5 nybbles [or 2.5 bytes].
The second part, which is the limiting domain of "suffixes", is used by the header's namespace to categorize words. It doesn't have to follow the restrictions of the 4xx suffix type, nor any other, for that matter; it only needs to follow that of the type provided by the header.
The remaining part orders the words in the provided category. It could follow a stricter system of categorization, or simply list words 000~FFF. [if [0] is employed, then it would be from 001~FFF.]
I did define a method of encoding names in the F header [category F1xxxx], but that's about it. Here are the corresponding sounds for each nybble:
| 1 | m |
| 2 | n |
| 3 | p |
| 4 | t |
| 5 | k |
| 6 | s |
| 7 | w |
| 8 | l |
| 9 | j |
| A | a |
| B | i |
| C | u |
| D | o |
| E | e |
| F | END |
yes it is just toki pona again go figure
I can encode my name like this then: F1 2C1E8C5D2F → #F12C1E #8C5D2F
Which in the conlang looks like--
oh. yeah that makes sense, a lot of names will start off very red because of that first byte starting with F. this still doesn't look great. but it's not supposed to; as long as it workd, we good!