geb a | 4 Dec 16:40 2008
Picon

Re: [plt-edu] Re: audio in Scheme

Perhaps something could be built on top of the scheme interface to supercollider by Rohan Drape (rsc)?

--- On Thu, 12/4/08, Shriram Krishnamurthi <sk@...> wrote:

> From: Shriram Krishnamurthi <sk@...>
> Subject: Re: [plt-edu] Re: [plt-scheme] audio in Scheme
> To: "Stephen Bloch" <sbloch@...>
> Cc: "Eli Barzilay" <eli@...>, "Scheme PLT"
<plt-scheme@...>, "plt edu" <plt-edu@...>
> Date: Thursday, December 4, 2008, 7:26 AM
> Hear, hear (so to speak).  [Or as they say on the Internets,
> here,
> here.]  I've been looking for a similar library for
> HtDW.
> 
> On Thu, Dec 4, 2008 at 10:24 AM, Stephen Bloch
> <sbloch@...> wrote:
> >
> > On Dec 4, 2008, at 9:56 AM, Eli Barzilay wrote:
> >
> >> IMO (or IME), there are two very different worlds
> here -- one is
> >> dealing with sound and the other is dealing with
> the melody.  A lot of
> >> what you describe goes to the first category,
> which I think is not too
> >> good for introductory material.  Dealing with
> notes is much better for
> >> that.  This is like the difference between
> world-style graphics and a
(Continue reading)

Eli Barzilay | 4 Dec 17:01 2008

Re: [plt-edu] Re: audio in Scheme

On Dec  4, Robby Findler wrote:
> I think sounds are important. I see them as the world analog of
> image constants.

Yes, sounds are important, just like Stephen writes -- in a very
similar way to copy-pasting images.  Things still work out easily as
long as you're dealing with discrete operations -- things like
transposing or mirroring; but waveform primitives and ADSR
specifications are much harder to deal with.

BTW, at least under linux, dealing with sound at that level is very
simple -- you get some sound device in the form of a /dev/... file,
and all you need to do is pour numbers into it.  But getting from this
to playing something interesting is much more involved.

BTW#2, the main technical problem with getting a good interface to
work is obvious: finding the common+practical functionality that can
be used on Windows/Mac/Linux.  Another problem for dealing with the
"cool" aspect of sounds in a world-like way is that they can eaily be
much more resource hungry than images.

--

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Geoffrey S. Knauth | 4 Dec 17:25 2008

Re: audio in Scheme

On Dec 4, 2008, at 11:01, Eli Barzilay wrote:
> BTW#2, the main technical problem with getting a good interface to
> work is obvious: finding the common+practical functionality that can
> be used on Windows/Mac/Linux.  Another problem for dealing with the
> "cool" aspect of sounds in a world-like way is that they can eaily be
> much more resource hungry than images.

There's also the question of notation(s) to support.  abc? LilyPond?  
MIDI? MusicXML? NeumeXML? Support for music from India, China, Japan,  
Indonesia...?

I wonder if it's possible to layer the functionality to support  
different types of sounds and cultural conventions.

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Alex Shinn | 4 Dec 18:05 2008
Picon

Re: Recommendations for parsing HTML

John Clements <clements@...> writes:

> Okay, *now* someone can tell me that there's a perfectly good
> alternative to htmlprag.

There's an old, unpublished library at

  http://synthcode.com/scheme/html-parser.scm

It's purely functional R[45]RS, and just now checking it
passes 96 out of 96 of the tests I copied from htmlprag (the
others weren't appropriate or the proper behavior didn't
immediately seem obvious).

It does some things differently from htmlprag where the
browser would do so, and I'm sure there are still edge cases
where it differs from the major browsers.

It doesn't support namespaces yet.

Although it provides a simple html->sxml API, you can also
use it like the SSAX tree-folder with fully customizable
callbacks.  This is essential if you want to parse HTML
without slurping the whole thing into memory at once.  For
example, the parser for html-strip could be defined as:

  (make-html-parser
    'start: (lambda (tag attrs seed virtual?) seed)
    'end:   (lambda (tag attrs parent-seed seed virtual?) seed)
    'text:  (lambda (text seed) (display text)))
(Continue reading)

Matthias Felleisen | 4 Dec 19:16 2008

Re: [plt-edu] Re: audio in Scheme


On Dec 4, 2008, at 12:16 PM, Marty Billingsley wrote:

> You could modify the material for use with scheme.

Nah, it's not about Scheme and not about using content.
It's BSL, BSL+, ISL, ISL+ and the design recipe.
(If that's not possible, it shouldn't have been
in a CS edu book in the first place.)

-- Matthias

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Rohan Golwala | 4 Dec 20:09 2008
Picon

Database

Hi,
 
I have established a connection with a database using scheme and performing the basic SQL querries such as insert, create, update etc. But now I want to perform some interesting operations which I can't figure it out. Can anyone suggest me some cool operations that should be done using the database and the scheme....?
 
Thanks,

--
Rohan.
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
Geoffrey S. Knauth | 4 Dec 21:01 2008

Re: Database

On Dec 4, 2008, at 14:09, Rohan Golwala wrote:
> I have established a connection with a database using scheme and  
> performing the basic SQL querries such as insert, create, update  
> etc. But now I want to perform some interesting operations which I  
> can't figure it out. Can anyone suggest me some cool operations that  
> should be done using the database and the scheme....?

Are you using MySQL, PostgreSQL or something else?

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Jens Axel Soegaard | 4 Dec 21:13 2008
Picon

Re: In-line LaTeX in REPL

Hi All,

First of all: This is brilliant.

Second:
  A small observation: At first the shell that DrScheme starts couldn't find
  any of pdflatex, convert, and gs since they weren't on the path.
  (I normally use spotlight to start DrScheme)
  Starting DrScheme from a terminal solves all of this.

Last, but most importantly:

I saved Eli's version in latex.ss

> #reader scribble/reader
> #lang scheme
> (require scheme/system scheme/gui/base)
>   
...
> ;; Examples
>  <at> latex{\sum_{i=0}^{\infty}\lambda_i}
> (let ([self  <at> str{\lambda x . x x}])
>    <at> latex{( <at> self) ( <at> self)})
>   
And the I run them I get nice formulas in the REPL.

But! If I enter the following in the REPL

  (let ([self  <at> str{\lambda x . x x}])
     <at> latex{( <at> self) ( <at> self)})

I get the following error from the reader:

    read: illegal use of `.'

Should the REPL of the module language use the reader
specified in the source file?

--

-- 
Jens Axel S√łgaard

_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Sam TH | 5 Dec 19:44 2008

attaching object names to values

The contract system uses the `object-name' of predicates to print out
their names in error messages.  But this can be useless if the
predicate itself is wrapped in a contract.  This program shows the
problem pretty well:

#lang scheme

(define x? (contract (-> any/c boolean?) (lambda (x) #t) 'here 'there))

(define my/c (-> x? x?))

(contract my/c 5 'foo 'bar)

It gives a contract error referencing "unsaved-editorx:y:z", instead
of "x?".  Unfortunately, there seems to be nothing that I can do to
change the object-name of the contract value (except eta-expand).
Notably, the inferred-name syntax property doesn't work, since the
actual lambda expression isn't available (it's in the contract
library). Is there a solution here I'm missing?

Thanks,
--

-- 
sam th
samth@...
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme

Robby Findler | 5 Dec 21:48 2008

Re: local planet mirror/repository?

I can look into that at some poitn, but it would be nice to hear more
about the actual problem you're experiencing. Are you finding that
just downloading everything from Chicago is slow? (including, say, the
PLT Scheme mirror for downloading the basic installation)?

Thanks,
Robby

On Fri, Dec 5, 2008 at 1:13 AM, YC <yinso.chen@...> wrote:
>
> On Thu, Dec 4, 2008 at 10:28 PM, Jacob Matthews <jacobm@...>
> wrote:
>>
>> Most of the code in the planet server is dedicated to the second task.
>> If you only wanted to worry about the first task (as presumably is
>> what you'd want to do with a local mirror), you could use the code in
>> collects/planet/private/planet-shared.ss, probably starting with
>> lookup-package.
>
> Thanks for the pointer, Jacob.
>>
>> The other part of the task would be downloading the complete index of
>> planet packages regularly. That I can't help you with.
>>
>
> I noticed that planet server doesn't handle 304 (Etag, If-Non-Match,
> If-Modified-Since) caching.  While I imagine bandwidth isn't an issue for
> uchicago, it can help a proxy to identify whether to download the package
> again (and save bandwidth).  This would be a feature request ;)
>
> Thanks,
> yc
>
>
_________________________________________________
  For list-related administrative tasks:
  http://list.cs.brown.edu/mailman/listinfo/plt-scheme


Gmane