Theiling Online    Sitemap    Conlang Mailing List HQ   

Re: Conlang Software Ideas and Survey

From:Chris Bates <chris.maths_student@...>
Date:Friday, May 26, 2006, 21:24
One question... what exactly do you want to cover with this program? I'm
guessing that it will make dictionaries, you've already mentioned sound
changes and word generation, but what else? Is it designed simply to aid
a conlanger who knows what they're doing, or is it designed in part to
structure the process of conlanging (in wizard form or something) for
those not sure how to go about it? I hope not the latter, since I don't
believe it's possible to make the software flexible enough...

>While I'm offering to get this off the ground and help lead it (at least for now), >I don't want this to be _my_ project, because I don't do enough conlanging to >justify it for myself (but if I had it, I might do more). Rather, I'd like it >to be a group project. I know we have a large community on the list, >including a fair number of programmers. what prompted me to post this here >was twofold. Firstly, the LCC resparked my interest in conlanging, which >brought me back to this concept, and secondly, I recently purchased a book on >Extreme Programming (XP), and am eager to give it a try on a real life >program. Unfortunately, it's hard to apply to my current project at work, at >least whole cloth, since we already have a large team, a large existing >code-base, and existing development processes. > > >
I might be interested in helping, but unfortunately I don't know C# at the moment.
>=============================================== >CLIDE Initial Interest Survey > >1. Do you currently use, or have you used, a software package to assist with >language construction and/or maintanance? > - If yes: > - What software program(s) have you used, and for what purpose(s)? > (e.g Word, Excel, Open Office, LangMaker, IPAZounds, werd, InspirationPad...) > - What feature(s) do you find are the most useful? > - What feature(s) do you find are missing? > - If no: > - Why not? > - What (if anything) would make you reconsider? > >
Yes. I've used various database type programs (including the SIL program shoebox) to try to maintain dictionaries, I've tried (and disgarded) word generators, I've used Latex, Word and Open Office at different stages for writing grammars (Latex most recently when I discovered a package that made it easier to produce good IPA). The key features for a dictionary program that are missing from many database programs: 1. support for variable length fields. Fixed length is no good for dictionaries unless you want to waste a ton of space by having a very large fixed length field. 2. Tools to help cross-reference and generate the English -> Conlang and Conlang -> English sections at the same time. Keeping both sections up to date and consistent can be a bit tedious with a normal dictionary if you're writing proper definitions instead of just listing one word rough equivalents. 3. Full unicode support The key features for a grammar writer are: 1. styles 2. tables 3. full unicode compatibility with correct positioning of modifiers, including multiple stacked modifiers 4. Automatic contents page generation and indexing It would also be handy to have a way of entering non-standard symbols using ASCII encodings then having them automatically converted. For example, the package I use in Latex has \textipa{}. You stick a certain ASCII encoding between the brackets and in the document it magically becomes perfect IPA... For a word processor, perhaps you could have some kind of encoding plug-in system... you select text in an ASCIIfied encoding, right click, select convert to -> IPA / ....., and then get the proper symbols without having to define special keyboard layouts. A sound change applier needs a complicated features model, so that you can perform general changes like "V nasalizes before a nasal consonant" without dealing with every specific possibility separately. For example, IPA Zounds has such a framework, although it can be further improved.
> >2. Would you consider using an integrated software program to assist with >language construction and/or maintanance? > > >
I'm still looking for a good flexible dictionary program. I fell out with Shoebox or its successor because, despite claims to the contrary, its unicode support was somewhat flaky (sometimes it worked, sometimes for no apparent reason it screwed it up). It also struck me as being somewhat inadequate for some of the basics, although it had some good advanced features. For writing up, I think I'll keep persevering with Latex for now, despite my somewhat on off relationship with it.
>3. Would you consider helping develop said program? > > >
Already answered yes, depending which language it's written in, and how long I get to learn said programming language. :) Once you've learned a couple of programming languages, you can generally pick up another fairly easily, or at least the core bits...
>Questions 4-13 apply only if you answered yes to 2 (or 3) (Potential User). > >4.What operating system(s) do you use? > >
Windows XP and Linux.
>5. How important is it for it to be easy to install? > For example, would you use it if there were a few external dependencies that you > had to download first? > > >
Yes, depending on how many.
>6. How important would a programmatic interface (API) be to you? > > >
Not that important to be honest, although it would be better if it was extendable.
>7. How important would a command-line interface be to you? > > >
I'm a bad bad linux user. :( I have to admit that while I can use the command line, I prefer my shiny colourful GUI.
>8. How important would a graphical interface be to you? > > >
I'd prefer a GUI. It's no big deal if the interface is text based though.
>9. How important would a web-based interface be to you? > > >
Export to HTML would be a key feature (although I guess we could generate a Latex dictionary instead and compile it to PDF), since most of the conlang info sharing is done over the internet.
>10. How important would a script-based interface be to you? > > >
It might be handy.
>11. How important would database access be to you? > > >
Since my main interest is a dictionary program...
>12. How important would extensibility be? > >
I don't know if I myself would write any extensions, but given our many programmers easy extendibility might be good.
> >13. Which of the following features might you use? (This is only to get a broad >feel for what might be included -- more detailed determinations of features >can be conducted later) > - Word generation > >
MAYBE
> - Sound change management > >
PROBABLY
> - Lexicon management > >
YES
> - Etymology managemet > >
YES
> - Statistical analysis of texts > >
YES
> - Interlinear creation (manual or automatic) > >
YES
> - Creating a reference grammar > >
Not unless it beats Latex, Word and Openoffice...
> - Grammatical parsing > >
MAYBE
> - Vocalization (computer-pronunciation of a conlang) > >
If you could pull this off, I'd use it. I doubt it's manageable though.
> - Phrase-structure tree parsing and/or visualizing > >
NO
> 14. Which of the following systems have you (or could you) developed on? > - Windows > - Macintosh > - *nix > - Other (please specify) > > >
Mostly windows. I'm a maths geek mainly though, so I have little experience at user interfaces... most of the stuff I write is stuff that's just designed to work things out and spit out an answer. If you're looking for someone who can write GUIs I'm not the right guy.
>15. Which of the following languages do you know? > - C/C++ > - Visual Basic > - Java > - C# > - JavaScript > - Perl > - Python > - Ruby > - HTML > - XML > - SQL > - Other (please specify) > > >
Visual Basic, Perl, HTML, SQL, a bit of Java a long long time ago that I've forgotten now... a bit of lots of different languages really. As I said, I throw together very rough and ready things for working out maths problems for the most part.
>16. Which of the following areas do you have experience in? > - Database Programming > - Network Programming > - GUI Design > - Natural Language Processing > - Architecture and Design > - Software Testing and Test-Driven Development > - Technical Documentation > - Development Processes > - Extreme Programming > - Other (please specify) > > >
Bodging. To be honest, I really don't think I can be much help to you, since I'm not exactly known for my experience on large software projects, or for that matter my ability to write transparent code. But if you do need help with anything and you're desperate I'm willing to give it a go.