Page 17 of 21
Re: Brassica SCA [v1.0.0]
Posted: Wed Mar 19, 2025 12:48 pm
by Lērisama
I tried that and got the following error:
Code: Select all
cli-pb/Main.hs:40:13 error:
• Variable not in scope
asum :: [Parser ParadigmInput] -> Parser ParadigmInput
• Perhaps you meant one of these:
'sum' (imported from prelude), 'asumC' (imported from Conduit)
Perhaps you want to add 'asum' to the import list in the import of
'Data.Foldable' (cli-pb/Main.hs:8.1-29).
|
40 | <$> asum
| ^^^^
And then error messages caused by the above.
This is weird, as it seems to be an error in the compiling, which I'm sure worked fine when I tried it yesterday; I'm not sure what's going on.
Re: Brassica SCA [v1.0.0]
Posted: Wed Mar 19, 2025 9:58 pm
by bradrn
Lērisama wrote: ↑Wed Mar 19, 2025 12:48 pm
This is weird, as it seems to be an error in the compiling, which I'm sure worked fine when I tried it yesterday; I'm not sure what's going on.
This is in the paradigm builder (in directory
cli-pb). Perhaps you didn’t try building it yesterday.
It’s a strange error though… basically it’s saying that it can’t find the function
asum, which is weird since it’s a common function. My best guess is that you’re somehow stuck on a very old (pre-4.16) version of the base library, which didn’t define
asum. What does
ghc --version give you?
Re: Brassica SCA [v1.0.0]
Posted: Thu Mar 20, 2025 9:58 am
by Travis B.
One thing I should recommend is downloading GHC etc. directly rather than using what comes with your distros -- distros often lag behind, especially Debian-based ones (cough cough "stable" cough cough).
Re: Brassica SCA [v1.0.0]
Posted: Thu Mar 20, 2025 12:54 pm
by Lērisama
It claims to be The Glorious Glasgow Haskell Compilation System, version 9.0.2
Re: Brassica SCA [v1.0.0]
Posted: Thu Mar 20, 2025 8:41 pm
by bradrn
Travis B. wrote: ↑Thu Mar 20, 2025 9:58 am
One thing I should recommend is downloading GHC etc. directly rather than using what comes with your distros -- distros often lag behind, especially Debian-based ones (cough cough "stable" cough cough).
Wait… this makes me realise… I thought I recommended
GHCup already. But looks like I didn’t — no wonder Lērisama is having problems with painfully old GHC versions.
Lērisama, if you’re not already using GHCup, clean out your existing Haskell installation completely and reinstall it via GHCup. It should solve your problems. Distro packages of Haskell are famously bad.
Re: Brassica SCA [v1.0.0]
Posted: Fri Mar 21, 2025 2:22 am
by Lērisama
bradrn wrote: ↑Thu Mar 20, 2025 8:41 pm
Wait… this makes me realise… I thought I recommended
GHCup already. But looks like I didn’t — no wonder Lērisama is having problems with painfully old GHC versions.
Lērisama, if you’re not already using GHCup, clean out your existing Haskell installation completely and reinstall it via GHCup. It should solve your problems. Distro packages of Haskell are famously bad.
Aha, I was not aware of that. I'll try that at the weekend.
Re: Brassica SCA [v1.0.0]
Posted: Fri Mar 21, 2025 3:21 pm
by Lērisama
I managed to install ghcup tonight, and tried to recompile it. I got a lot of
Code: Select all
/usr/bin/ld.gold: error: cannot find -lgmp
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
As well as warnings that
~ would soon cause an error, that
memset ans
memcpy is deprecated. It is also complaining that importing
Data.Semigroup is redundant.
Re: Brassica SCA [v1.0.0]
Posted: Fri Mar 21, 2025 3:23 pm
by Travis B.
Lērisama wrote: ↑Fri Mar 21, 2025 3:21 pm
I managed to install ghcup tonight, and tried to recompile it. I got a lot of
Code: Select all
/usr/bin/ld.gold: error: cannot find -lgmp
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
As well as warnings that
~ would soon cause an error, that
memset ans
memcpy is deprecated. It is also complaining that importing
Data.Semigroup is redundant.
You probably need libgmp installed then.
Re: Brassica SCA [v1.0.0]
Posted: Fri Mar 21, 2025 3:32 pm
by Lērisama
Travis B. wrote: ↑Fri Mar 21, 2025 3:23 pm
Lērisama wrote: ↑Fri Mar 21, 2025 3:21 pm
I managed to install ghcup tonight, and tried to recompile it. I got a lot of
Code: Select all
/usr/bin/ld.gold: error: cannot find -lgmp
collect2: error: ld returned 1 exit status
`gcc' failed in phase `Linker'. (Exit code: 1)
As well as warnings that
~ would soon cause an error, that
memset ans
memcpy is deprecated. It is also complaining that importing
Data.Semigroup is redundant.
You probably need libgmp installed then.
I had
just shut the pi down. Sod's law strikes again!
Re: Brassica SCA [v1.0.0]
Posted: Sat Mar 22, 2025 4:25 am
by Lērisama
It works!
Re: Brassica SCA [v1.0.0]
Posted: Sat Mar 22, 2025 6:17 am
by Raphael
Lērisama wrote: ↑Sat Mar 22, 2025 4:25 amIt works!
*manic laughter*
Re: Brassica SCA [v1.0.0]
Posted: Sat Mar 22, 2025 6:42 am
by bradrn
Lērisama wrote: ↑Sat Mar 22, 2025 4:25 amIt works!
Amazing!
Re: Brassica SCA [v1.0.0]
Posted: Thu May 22, 2025 10:43 am
by Lērisama
I have two small feature requests today. The first is something that is actually impossible to do in Brassica currently, although it is rare that the characters affected would be used after the words are in a SCA-friendly format of any kind, but the second is just a very mild shortcut
- It would be useful to be able to refer to the literal values of the characters brassica reserves, especially as part of brassicating the input, so I can write rules such as -x "*" /¹ or -x "-" / # clitic #
- It would also be useful to be able to use {…} outside of an inline category, specifically for use with the Kleene star, so an expression such as {(C) -str (C)}* would evaluate to ‘any number of of unstressed syllables, including 0’², which I currently write as [{(C) -str (C)}]*, with an annoying extra set of square brackets
¹ For when you stupidly included an asterisk at the start of every dictionary entry for an in-world reconstucted language or alternatively if your working from an existing dictionary for an actually reconstructed language
² Assuming maximal CVC syllable structure
Re: Brassica SCA [v1.0.0]
Posted: Fri May 23, 2025 12:32 am
by bradrn
Lērisama wrote: ↑Thu May 22, 2025 10:43 am
It would be useful to be able to refer to the literal values of the characters brassica reserves, especially as part of brassicating the input, so I can write rules such as
-x "*" /¹ or
-x "-" / # clitic #
Fair enough. For the moment I can suggest find-and-replace. (Or
sed, if you like).
For syntax, I’m not sure I love double-quotes. What would you think of using an escape character, say
\* or
$*?
It would also be useful to be able to use {…} outside of an inline category, specifically for use with the Kleene star, so an expression such as {(C) -str (C)}* would evaluate to ‘any number of of unstressed syllables, including 0’², which I currently write as [{(C) -str (C)}]*, with an annoying extra set of square brackets
Shouldn’t be too hard to implement… though first I’d like to satisfy myself that there’s no unexpected interactions with anything else.
(BTW, I haven’t been working on Brassica at all recently — I just haven’t had the time. But these at least should be fairly straightforward.)
Re: Brassica SCA [v1.0.0]
Posted: Fri May 23, 2025 1:36 am
by Lērisama
bradrn wrote: ↑Fri May 23, 2025 12:32 am
Fair enough. For the moment I can suggest find-and-replace. (Or
sed, if you like).
I
do use it already, it's just a pain having to do the copy-pasting (which isn't an issue for
sed, but I don't always use the command line version). It's not at all urgent, just a way to lessen some tedium.
For syntax, I’m not sure I love double-quotes. What would you think of using an escape character, say \* or $*?
I don't like them either; I considered using an escape character in my examples, but couldn't think of a good one that wasn't taken.
\* is probably the best, as
$ has a use already. I only rejected it initially because it's a bit mistakeable for the very important
/, but if it's always appearing before other characters, that's shouldn't be a problem.
It would also be useful to be able to use {…} outside of an inline category, specifically for use with the Kleene star, so an expression such as {(C) -str (C)}* would evaluate to ‘any number of of unstressed syllables, including 0’², which I currently write as [{(C) -str (C)}]*, with an annoying extra set of square brackets
Shouldn’t be too hard to implement… though first I’d like to satisfy myself that there’s no unexpected interactions with anything else.
Thank you
(BTW, I haven’t been working on Brassica at all recently — I just haven’t had the time. But these at least should be fairly straightforward.)
I hope your life has more free time in the future.
Re: Brassica SCA [v1.0.0]
Posted: Fri May 23, 2025 4:49 am
by Neonnaut
bradrn wrote: ↑Fri May 23, 2025 12:32 am
For syntax, I’m not sure I love double-quotes. What would you think of using an escape character, say
\* or
$*?
Perhaps the backtick.
Re: Brassica SCA [v1.0.0]
Posted: Fri May 23, 2025 5:45 am
by bradrn
Neonnaut wrote: ↑Fri May 23, 2025 4:49 am
bradrn wrote: ↑Fri May 23, 2025 12:32 am
For syntax, I’m not sure I love double-quotes. What would you think of using an escape character, say
\* or
$*?
Perhaps the backtick.
Perhaps! Except that I worry that the backtick itself might occur in words reasonably often (e.g. for tones)…
Re: Brassica SCA [v1.0.0]
Posted: Fri May 23, 2025 10:06 am
by Lērisama
bradrn wrote: ↑Fri May 23, 2025 5:45 am
Neonnaut wrote: ↑Fri May 23, 2025 4:49 am
bradrn wrote: ↑Fri May 23, 2025 12:32 am
For syntax, I’m not sure I love double-quotes. What would you think of using an escape character, say
\* or
$*?
Perhaps the backtick.
Perhaps! Except that I worry that the backtick itself might occur in words reasonably often (e.g. for tones)…
The obvious solution would be
\\, but I don't particularly like that.
Re: Brassica SCA [v1.0.0]
Posted: Sat May 24, 2025 10:47 am
by Lērisama
What about using & as the escape character? It already has a similar but not confusible use in brasica, to in effect force featural categories to be read as nom-featural ones¹, but you can't use a category as a grapheme, and the context is different – inside, instead of (mostly) outside inline categories, and it's only use in phonetic transcription I'm aware of is as the X-SAMPA for the so-rare-its-existence-is-disputed¹ ⟨ɶ⟩, so it's unlikely it's been used in anyone's sound changes.
¹ Yes I know none of the vowels exist in the way the IPA would like to believe, but I don't think there is even an acknowledged range of F1 & F2 values to label ⟨ɶ⟩
Re: Brassica SCA [v1.0.0]
Posted: Sat May 24, 2025 12:48 pm
by Man in Space
I've discovered Brassica can accept some outré characters—for my latest work I've successfully employed ⟨∏⟩ as a category identifier.