WordBuilder for Linux, Mac, etc.
I just managed to install this in my windows-bearing comp, I'll review it rather succintly:
- Excelent tool, without a doubt the most powerful wordgen I've come across: I shall certainly be using it form now on as my primary wordgen app.
- It should have a friendlier interface: sure, it's a command-line app, and it should be, as it gives it the POWER, but it would be real nice to have a few dialogues that help me generate that code.
- Also, it would be great not to have to have to enter line breaks before each command.
- also, more color coding, or some other kind of coding that marks what is bracketed and what is not, so as to have a visually evident representation of the code itself.
Anyway, this is a great wordgen, thanks for your hard work. This shall be my wordgen of choice.
- Excelent tool, without a doubt the most powerful wordgen I've come across: I shall certainly be using it form now on as my primary wordgen app.
- It should have a friendlier interface: sure, it's a command-line app, and it should be, as it gives it the POWER, but it would be real nice to have a few dialogues that help me generate that code.
- Also, it would be great not to have to have to enter line breaks before each command.
- also, more color coding, or some other kind of coding that marks what is bracketed and what is not, so as to have a visually evident representation of the code itself.
Anyway, this is a great wordgen, thanks for your hard work. This shall be my wordgen of choice.
Awesome, this one works for me! I'll have to play around with it a bit more when I'm not busy finishing school projects.
Some things that occur to me right away that I'd be interested in seeing:
- Syntax highlighting, like Torco said, maybe with something that highlights matching parentheses, like gvim has
- Automatic line-wrapping at some set number of characters (configurable, maybe?)
- Monospaced font (the spaces are still much smaller than the other characters, so it's hard to see the structure)
Also, it'd be kind of cool if you could have some more comprehensive documentation for the script that's distributed with the program, with more examples and suchlike.
Some things that occur to me right away that I'd be interested in seeing:
- Syntax highlighting, like Torco said, maybe with something that highlights matching parentheses, like gvim has
- Automatic line-wrapping at some set number of characters (configurable, maybe?)
- Monospaced font (the spaces are still much smaller than the other characters, so it's hard to see the structure)
Also, it'd be kind of cool if you could have some more comprehensive documentation for the script that's distributed with the program, with more examples and suchlike.
It's (broadly) [faɪ.ˈjuw.lɛ]
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
All valid points, I suppose - what would you prefer instead of line breaks? Semi-colons?Torco wrote:I just managed to install this in my windows-bearing comp, I'll review it rather succintly:
- Excelent tool, without a doubt the most powerful wordgen I've come across: I shall certainly be using it form now on as my primary wordgen app.
- It should have a friendlier interface: sure, it's a command-line app, and it should be, as it gives it the POWER, but it would be real nice to have a few dialogues that help me generate that code.
- Also, it would be great not to have to have to enter line breaks before each command.
- also, more color coding, or some other kind of coding that marks what is bracketed and what is not, so as to have a visually evident representation of the code itself.
Anyway, this is a great wordgen, thanks for your hard work. This shall be my wordgen of choice.
As for the color coding, I'm going to have to rewrite the syntax highlighting from scratch, but I was kind of wanting to do that anyway, and with what I have in mind, it'd be easier to support semi-colons and such.
The windows version has syntax highlighting, but it could be better. Like I said above, I'm thinking of a way to implement a better version.faiuwle wrote: Awesome, this one works for me! I'll have to play around with it a bit more when I'm not busy finishing school projects.
Some things that occur to me right away that I'd be interested in seeing:
- Syntax highlighting, like Torco said, maybe with something that highlights matching parentheses, like gvim has
- Automatic line-wrapping at some set number of characters (configurable, maybe?)
- Monospaced font (the spaces are still much smaller than the other characters, so it's hard to see the structure)
Also, it'd be kind of cool if you could have some more comprehensive documentation for the script that's distributed with the program, with more examples and suchlike.
Line wrapping... hm... Not entirely sure how to handle that.
You can choose your font in the windows version, but not in the gtk version. Will fix that.
Documentation, yes. I should really get around to that.
Thanks for giving it a shot. It seems that folks are generally having trouble getting gtk to work under Mac. Bugger. I would try and make a cocoa version (in making the gtk version, I managed to couple the UI more loosely so it wouldn't be terribly hard to make another UI on top of what I have. I'm probably going to do so for Windows as well.), but it seems I can only develop cocoa apps on a mac, so I'm kinda stuck on that. Oh well. Glad that you can use the windows version thensu_liam wrote: Well, I've tried it on my mac without success. I've installed mono and gtk, but nothing. Mostly, I just boot to windows when I want to use wordbuilder and wilbur. I'm pretty much stuck on windows to use my ESRI apps, so that works.
[url=http://whee.dk]WordBuilder[/url]
regarding line breaks, I have two non-exclusive ideas:
a) just spaces: I think this might get a bit complicated to code, tho'...
b) Perhaps it's more transparent for the loop command to, instead of using {} brackets, have a "loop/end loop" syntax [or maybe I've been using too much SPSS lately ]; similarly, "rule/end rule" or something like that. I know it would be way more intuitive for me, at least.
a) just spaces: I think this might get a bit complicated to code, tho'...
b) Perhaps it's more transparent for the loop command to, instead of using {} brackets, have a "loop/end loop" syntax [or maybe I've been using too much SPSS lately ]; similarly, "rule/end rule" or something like that. I know it would be way more intuitive for me, at least.
a) That would require a bit of rethinking at least, and probably making all optional parameters mandatory...Torco wrote:regarding line breaks, I have two non-exclusive ideas:
a) just spaces: I think this might get a bit complicated to code, tho'...
b) Perhaps it's more transparent for the loop command to, instead of using {} brackets, have a "loop/end loop" syntax [or maybe I've been using too much SPSS lately ]; similarly, "rule/end rule" or something like that. I know it would be way more intuitive for me, at least.
b) Wouldn't you still need the line breaks then? I could do something to allow the rule/end rule syntax, but it'd still be line based. Thing is, how do I know where to break?
Code: Select all
tokens consonants b c d f g rule root loop 1 2 3 3 4 token consonants end loop branch something rule-something end rule
[url=http://whee.dk]WordBuilder[/url]
Could you have the statements either end with a line break or a semicolon, or something similar? That would be unambiguous, as long as you're not using semicolons for anything else.
It's (broadly) [faɪ.ˈjuw.lɛ]
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
Maybe it's the combination of brackets and breaks that makes it confusing for me. [don't mind me too much, btw, my syntax experience is MSDOS, a bit of SQL and SPSS, so not a lot] I imagine thisAlfar wrote: Thing is, how do I know where to break?
Code: Select all
tokens consonants b c d f g rule root loop 1 2 3 3 4 token consonants end loop branch something rule-something end rule
tokens consos p t k g
tokens rules a o i
rule syllable
loop 2[0] 1[1] 2[1]
token consonant
end loop
token vowel
end rule
rule root
loop 2
rule syllable
end loop
token consonant
end rule
to be less confusing, since it's pretty clear what's nested in what, maybe even so for the syntax highlighter
--- now that I think about it, this thing might even produce syntax, if it's told how to... of course, all it could do are colourless green ideas that sleep quite furiously.
What about Python-style, with whitespace denoting nesting levels:
That would actually be my preference, but you'd have to use a font where the spaces were the same width as the characters.
Code: Select all
rule syllable
loop 2[0] 1[1] 2[1]
token consonant
token vowel
rule root
loop 2
rule syllable
token consonant
It's (broadly) [faɪ.ˈjuw.lɛ]
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
like nothing but tabs marking what's nested in what?faiuwle wrote:What about Python-style, with whitespace denoting nesting levels:
That would actually be my preference, but you'd have to use a font where the spaces were the same width as the characters.Code: Select all
rule syllable loop 2[0] 1[1] 2[1] token consonant token vowel rule root loop 2 rule syllable token consonant
scratch what I said earlier, faiuwle wins
This... intrigues me. What do you mean?Torco wrote:--- now that I think about it, this thing might even produce syntax, if it's told how to... of course, all it could do are colourless green ideas that sleep quite furiously.
I've been thinking about a sister script language that'd define how to translate a parse tree into a syntactically correct sentence in your language, but I'm not sure if it's useful, or even likely to work at all.
faiuwle, python indentation for blocks? Heh... I don't think it's harder than the other options per se. I'd like to keep backwards compatibility for existing scripts, though, so maybe I'll have to add some kind of marker for which formatting the script is in if it's any other format than the existing one.
[url=http://whee.dk]WordBuilder[/url]
- Nortaneous
- Sumerul
- Posts: 4544
- Joined: Mon Apr 13, 2009 1:52 am
- Location: the Imperial Corridor
"green colourless ideas" is an example of how a phrase or sentences can be totally grammatical, this is, have no word sequences that are disallowed in a certain language [like "*this not is no allowing for language english"] and still be utterly meaningless and make no sense; ideas, of course, can be neither green, nor colourless.
wordgens as complex as yours can, of course, produce grammatical sequences in any 'lang; they just won't mean anything.
wordgens as complex as yours can, of course, produce grammatical sequences in any 'lang; they just won't mean anything.
so what? Syntax is supposed to be clear, simple, and easy to type; fuck pretty.Nortaneous wrote:oh for fuck's sake, using whitespace for anything is incredibly ugly
- Nortaneous
- Sumerul
- Posts: 4544
- Joined: Mon Apr 13, 2009 1:52 am
- Location: the Imperial Corridor
Now that's a sensible argument: AFAICT wrong, as I see no reason why whitespace would get mangled unless you like print it and then run it thru OCR, but a sensible argument nonetheless.Nortaneous wrote:syntax is also not supposed to break massively if something that gets mangled as frequently as whitespace does gets mangled
My apologies; let none accuse me of being an antipeoplewhoeatideasforbreakfastist.su_liam wrote:I take umbrage at this. I like to have at least one idea that is both green and colorless every morning before breakfast. I'm not a morning person.Torco wrote:ideas, of course, can be neither green, nor colourless.
xD
- Nortaneous
- Sumerul
- Posts: 4544
- Joined: Mon Apr 13, 2009 1:52 am
- Location: the Imperial Corridor
forums that don't have code tags, email, html if the web designer is an idiot, comments on blog posts or somethingTorco wrote:Now that's a sensible argument: AFAICT wrong, as I see no reason why whitespace would get mangled unless you like print it and then run it thru OCR, but a sensible argument nonetheless.Nortaneous wrote:syntax is also not supposed to break massively if something that gets mangled as frequently as whitespace does gets mangled
Siöö jandeng raiglin zåbei tandiüłåd;
nää džunnfin kukuch vklaivei sivei tåd.
Chei. Chei. Chei. Chei. Chei. Chei. Chei.
nää džunnfin kukuch vklaivei sivei tåd.
Chei. Chei. Chei. Chei. Chei. Chei. Chei.
You're right - FORTRAN was truly the most beautiful of programming languages.Nortaneous wrote:oh for fuck's sake, using whitespace for anything is incredibly ugly
Maybe if you're doing a lot of reading the code in and out of word-processors, this might be an issue, but AIUI, the only program that's going to be processing the script is this one, and anyway, a half-decent text editor won't fuck the whitespace, especially not the whitespace at the beginning of the line.
It's (broadly) [faɪ.ˈjuw.lɛ]
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
I don't foresee that as being a huge problem. Especially because I don't see anyone's syntax being used by anyone else to great frequency, so it's not like there's gonna be much syntax transference anyway, much less over such incredibly ancient mediums as codetagless fora, blogs and 1981 text processors.Nortaneous wrote:forums that don't have code tags, email, html if the web designer is an idiot, comments on blog posts or somethingTorco wrote:Now that's a sensible argument: AFAICT wrong, as I see no reason why whitespace would get mangled unless you like print it and then run it thru OCR, but a sensible argument nonetheless.Nortaneous wrote:syntax is also not supposed to break massively if something that gets mangled as frequently as whitespace does gets mangled
Tho' sure, a disclaimer such as "beware, the whitespace is essential to this program's syntax"
That there makes me want to make a right-aligned script with indentationfaiuwle wrote:Maybe if you're doing a lot of reading the code in and out of word-processors, this might be an issue, but AIUI, the only program that's going to be processing the script is this one, and anyway, a half-decent text editor won't fuck the whitespace, especially not the whitespace at the beginning of the line.
Nortaneous does have a point with posting code on forums and such. It's been plenty of trouble already on the cruddy forum I had on whee.dk
[url=http://whee.dk]WordBuilder[/url]
Websites and fora that can't show things in a monospaced font are utterly useless for talking about any kind of formal language or script, whether it uses whitespace significantly or not. And if, for some reason, you find yourself on such a site, well, that's what pastebin is for.
It's (broadly) [faɪ.ˈjuw.lɛ]
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
#define FEMALE
ConlangDictionary 0.3 3/15/14 (ZBB thread)
Quis vult in terra stare,
Cum possit volitare?
- Nortaneous
- Sumerul
- Posts: 4544
- Joined: Mon Apr 13, 2009 1:52 am
- Location: the Imperial Corridor
another problem: it takes more effort to manually space in to the required length than it does to add brackets
another problem: isn't parsing the whitespace more of a bitch than parsing brackets?
another problem: people have different indent styles, so forcing them into one really isn't that good of an idea when there's an alternative
and yes I realize these are criticisms usually reserved for large programming languages, but "nobody is going to actually use this so what the hell" is not a good design principle
another problem: isn't parsing the whitespace more of a bitch than parsing brackets?
another problem: people have different indent styles, so forcing them into one really isn't that good of an idea when there's an alternative
and yes I realize these are criticisms usually reserved for large programming languages, but "nobody is going to actually use this so what the hell" is not a good design principle
Siöö jandeng raiglin zåbei tandiüłåd;
nää džunnfin kukuch vklaivei sivei tåd.
Chei. Chei. Chei. Chei. Chei. Chei. Chei.
nää džunnfin kukuch vklaivei sivei tåd.
Chei. Chei. Chei. Chei. Chei. Chei. Chei.
1) Depending on how well the editor works, it may take less - I should be able to determine whether or not a line is a block-starter, and automatically indent the next line when you press enter. Using tabs, outdenting would just be pressing backspace.Nortaneous wrote:another problem: it takes more effort to manually space in to the required length than it does to add brackets
another problem: isn't parsing the whitespace more of a bitch than parsing brackets?
another problem: people have different indent styles, so forcing them into one really isn't that good of an idea when there's an alternative
and yes I realize these are criticisms usually reserved for large programming languages, but "nobody is going to actually use this so what the hell" is not a good design principle
2) Parsing would be a matter of storing the current depth and if the indentation is less than the previous line, the block(s) ends. I don't think it's particularly hard to implement a naïve version, but a robust one that'll accept miss-by-one-space indentations and such, a bit of a bother. Forcing people to put their start brackets at the end of the line and not on a line of its own may have been more offensive, really.
3) Python only requires that things at the same level in the parse tree are indented the same, IIRC. You can use tabs and spaces however you like. I'd prefer to use tabs, though, and let people set how many spaces they want tabs to indent, that way they get the look they want, even when looking at other people's code. Also, it lessens the risk of miss-by-one-space problems.
I'm glad to see these criticisms, and I try to stay away from the "what the hell" mentality. When I wrote the parser, I tried to strike a balance between what I could do quickly and what wouldn't annoy me too much as a programmer.
[url=http://whee.dk]WordBuilder[/url]
- Nortaneous
- Sumerul
- Posts: 4544
- Joined: Mon Apr 13, 2009 1:52 am
- Location: the Imperial Corridor
1. A lot of people use notepad or nano or whatever to write code, so it's probably bad to have syntax that's inconvenient for people using minimal editors. Hell, I know a lot of people who do most of their code in ssh sessions, which pretty much means nano (no features), vi (eugh), or emacs (bloated as all hell). Although this thing is probably GUI-only anyway so I guess that's not applicable here.
2. The start bracket thing is easily avoidable by ignoring whitespace entirely. (well, maybe not entirely - this isn't 80s-era BASIC - but trash the tabs, CRs, and LFs)
3. Using whitespace at all brings up problems for people who use editors that don't automatically convert tabs to strings of spaces: if someone has tab length set to four and alternates between tab and space x4 to get an indent depth of four, they're fucked, and it'll be hell for them to notice that problem. You can't even assume a standard tab length for that sort of situation; industry standard is 8, as far as I've seen, but a lot of programmers have it set to 4.
2. The start bracket thing is easily avoidable by ignoring whitespace entirely. (well, maybe not entirely - this isn't 80s-era BASIC - but trash the tabs, CRs, and LFs)
3. Using whitespace at all brings up problems for people who use editors that don't automatically convert tabs to strings of spaces: if someone has tab length set to four and alternates between tab and space x4 to get an indent depth of four, they're fucked, and it'll be hell for them to notice that problem. You can't even assume a standard tab length for that sort of situation; industry standard is 8, as far as I've seen, but a lot of programmers have it set to 4.
Siöö jandeng raiglin zåbei tandiüłåd;
nää džunnfin kukuch vklaivei sivei tåd.
Chei. Chei. Chei. Chei. Chei. Chei. Chei.
nää džunnfin kukuch vklaivei sivei tåd.
Chei. Chei. Chei. Chei. Chei. Chei. Chei.