Fwd: [plt-scheme] DrScheme Interactions window

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Mon May 10 21:37:13 EDT 2004

Begin forwarded message:

> From: Matthias Felleisen <matthias at ccs.neu.edu>
> Date: May 10, 2004 9:36:43 PM EDT
> To: Connor Ferguson <psfreak at linkline.com>
> Subject: Re: [plt-scheme] DrScheme Interactions window
>
>
> On May 10, 2004, at 8:10 PM, Connor Ferguson wrote:
>
>>   For list-related administrative tasks:
>>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>> I have tested the GUI, it came up with the window (I had modified it 
>> so that
>> it had two text fields). When I entered the verb in however, it gave 
>> me an
>> error because it recognized the information in the text field as a 
>> string.
>
> What else would you expect? When you type something in a text field,
> the program receives a string. Actually, the string is in a text t
> and (text-contents t) extracts the string.
>
>> My verbs that I have defined as one-word variables that include a verb
>> structure with all the conjugations are not strings. They follow this
>> pattern
>>
>> (define ser (make-verb "ser" "to be" "soy" "eres" "es" "somos" "sois"
>> "son"))
>>
>> I tried changing it like so:
>>
>> (define "ser" (make-verb "ser" "to be" "soy" "eres" "es" "somos" 
>> "sois"
>> "son"))
>
> That's like saying "cat" means dog.
>
> My hunch is that you're trying to define a struct with this shape:
>
>  (define-struct verb (spanish english case1 case2 ...))
>
> Now you when you get the spanish or english, you want to look up
> the cases.
>
> Where is your data definition?
>
> Do you keep around a list of verbs? If so, where is your data 
> definition for your list? Let's call it a dictionary.
>
> Do you want to look up the verb in the dictionary. What function 
> contract do you use? What's the purpose statement? Where are the 
> examples?
>
> All of the above is independent of the GUI. If you look in the last 
> two parts of HtDP, you will actually see that the GUI that you're 
> trying to build is about 5 lines long. So the above questions are more 
> important.
>
> -- Matthias
>
>
>>
>>
>>>> on 5/9/04 5:03 PM, Matthias Felleisen wrote:
>>
>>>
>>> On May 9, 2004, at 2:50 PM, Connor Ferguson wrote:
>>>
>>>> I have already tested my conjugating program extensively in
>>>> Intermediate and
>>>> it works.
>>>
>>> Did you test the GUI too?
>>>
>>>> I tried using exactly the same GUI that you sent me but it still
>>>> didn't work.
>>>
>>> Did you test the code that I mailed you in Intermediate?
>>> Without the header lines and extra ) at the bottom?
>>>
>>>> I still do think that I'm going to have to use two separate
>>>> text fields because if it is one text field, it will act like a 
>>>> single
>>>> argument, right? My program needs two separate arguments.
>>>
>>> Yes you will. -- Matthias
>>>
>>>>
>>>> -Connor
>>>>
>>>>>> on 5/8/04 7:59 PM, Matthias Felleisen wrote:
>>>>
>>>>> Connor, remember the sequence:
>>>>>
>>>>> 1. Develop in a teaching language (Intermediate is probably okay).
>>>>>
>>>>> 2. Set the teachpack to gui.ss
>>>>>
>>>>> 3. Get the program right there.
>>>>>
>>>>> 4. Then do the rest.
>>>>>
>>>>> 5. If you don't follow those basic rules, the likelihood that the
>>>>> problem is yours is 99.9%.
>>>>>
>>>>> ;; ---
>>>>>
>>>>> If you want to confirm that you can get executables, use the GUI 
>>>>> that
>>>>> I
>>>>> mailed you and follow the steps. I'd be extremely surprised if they
>>>>> don't work. (I will install a 204 if you report otherwise but 
>>>>> that'll
>>>>> take a while. I will also not be happy if I can't reconstruct it.)
>>>>>
>>>>> If you do two steps at once, you always end up taking four :-)
>>>>>
>>>>> -- Matthias
>>>>>
>>>>>
>>>>> On May 8, 2004, at 10:48 PM, Connor Ferguson wrote:
>>>>>
>>>>>> Alright, I created the executable and that worked (it showed me 
>>>>>> the
>>>>>> icon).
>>>>>> But when I opened it, it opened a MrEd window entitled Standard
>>>>>> Output
>>>>>> and
>>>>>> gave me this error message
>>>>>>
>>>>>> cddddr: expects argument of type <cddddrable value>; given 
>>>>>> ("(module
>>>>>> mod-name mzscheme(require(lib \"pconvert.ss\")(lib
>>>>>> \"pretty.ss\"))(provide
>>>>>> init-code)(d...
>>>>>>
>>>>>> [Exited]
>>>>>>
>>>>>> The name of the module that I have put in includes spaces. Is 
>>>>>> that a
>>>>>> problem? I also changed the GUI so that it has two text boxes, one
>>>>>> for
>>>>>> the
>>>>>> subject and one for the verb.
>>>>>>
>>>>>> -Connor
>>>>>>
>>>>>>>> on 5/8/04 7:05 PM, Matthias Felleisen wrote:
>>>>>>
>>>>>>> For list-related administrative tasks:
>>>>>>> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>>>>>>
>>>>>>>
>>>>>>> On May 8, 2004, at 9:30 PM, Connor Ferguson wrote:
>>>>>>>
>>>>>>>> For list-related administrative tasks:
>>>>>>>> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>>>>>>>
>>>>>>>> This sounds great. I think I will need to modify it so that the 
>>>>>>>> GUI
>>>>>>>> will
>>>>>>>> have two text fields one for the subject and one for the verb.
>>>>>>>>
>>>>>>>> The only thing is, I have defined a verb as a structure and have
>>>>>>>> then
>>>>>>>> defined individual verbs. So my program takes a string and a 
>>>>>>>> verb
>>>>>>>> (struct)
>>>>>>>>
>>>>>>>> (define-struct verb (inf yo tu 3sing nos vos 3plural))
>>>>>>>> (define ser (make-verb "ser" "soy" "eres" "es" "somos" "sois"
>>>>>>>> "son"))
>>>>>>>>
>>>>>>>> Correct me if I'm wrong, but information placed into a text 
>>>>>>>> field
>>>>>>>> in
>>>>>>>> a
>>>>>>>> GUI
>>>>>>>> is considered a string. Could I possibly solve this problem by
>>>>>>>> modifying my
>>>>>>>> verb definitions as such:
>>>>>>>>
>>>>>>>> (define "ser" (make-verb "ser" "soy" "eres" "es" "somos" "sois"
>>>>>>>> "son"))
>>>>>>>
>>>>>>> Nah, remember that (define XYZ ...) introduces a Scheme name 
>>>>>>> (XYZ)
>>>>>>> to
>>>>>>> stand
>>>>>>> for some value.
>>>>>>>
>>>>>>> You may wish to consider a menu instead of a text field for input
>>>>>>> and
>>>>>>> just use lists.
>>>>>>>
>>>>>>>> Also, will this executable require DrScheme to be installed on 
>>>>>>>> the
>>>>>>>> computer
>>>>>>>> that it is running on and is it universal?
>>>>>>>
>>>>>>> You will need DrScheme on other computers just like you need 
>>>>>>> Windows
>>>>>>> on other computers to run your Windows program and OS X to run 
>>>>>>> your
>>>>>>> OS X
>>>>>>> program and so on. That's what's called an Operating System and
>>>>>>> DrScheme
>>>>>>> is just a very high level operating system.
>>>>>>>
>>>>>>> -- Matthias
>>>>>>>
>>>>>>> P.S. Good luck with your parents.
>>>>>>>
>>>>>>
>>>>>
>>
>>
>



Posted on the users mailing list.