Unknown feature name 'srfi-26'

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Unknown feature name 'srfi-26'

Alcides Flores Pineda
Hello everybody:

Im running some Kawa code that contains the following line:

    (require 'srfi-26)

And Im getting the following message:

    unknown feature name 'srfi-26' for 'require'

However the features of the SRFI-26 (cut/cute macros) are available and
they seem to be availabe by default without needing to require them
explicitly.

Im running kawa 1.13 in Debian Squeeze i386 with Java version 6:
  java version "1.6.0_26"
  Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
  Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)

Any ideas about this message? Is it possible to supress it? Can it be
safely ignored?

Greetings.
--
Alcides Flores Pineda.
Reply | Threaded
Open this post in threaded view
|

Re: Unknown feature name 'srfi-26'

Charles Turner-4
I assume by "contains the following line" you're referring to code
that used to run without warning, if so, I don't understand that.
SRFI-26 is not in REQUIRE's feature map by default, so the expression
(require 'srfi-26) is going to just warn you about its non-exsistence.

CUT and CUTE and actually builtins (Per, why is that, and not part of
a library instead?) I can't see any removal of srfi-26 mappings from
the ChangeLogs, so I'm bemused as to how that once worked. Needless to
say, you can safely remove the line containing (require 'srfi-26) and
expect to be able to still use the CUT and CUTE forms.

Charles.

On 8 July 2013 03:07, Alcides Flores Pineda <[hidden email]> wrote:

> Hello everybody:
>
> Im running some Kawa code that contains the following line:
>
>     (require 'srfi-26)
>
> And Im getting the following message:
>
>     unknown feature name 'srfi-26' for 'require'
>
> However the features of the SRFI-26 (cut/cute macros) are available and
> they seem to be availabe by default without needing to require them
> explicitly.
>
> Im running kawa 1.13 in Debian Squeeze i386 with Java version 6:
>   java version "1.6.0_26"
>   Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
>   Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
>
> Any ideas about this message? Is it possible to supress it? Can it be
> safely ignored?
>
> Greetings.
> --
> Alcides Flores Pineda.
Reply | Threaded
Open this post in threaded view
|

Re: Unknown feature name 'srfi-26'

Alcides Flores Pineda
Hello Charles:

Thank you very much for your reply.

In fact, this is the very first time I'm using SRFI-26 in Kawa (I'm porting some
Chicken code).

I've always been able to require some of the other Kawa implemented
SRFI's listed in:

* http://www.gnu.org/software/kawa/Implemented-SRFIs.html 

with no warnings at all, so this message was a little bit strange to me
(v.gr. in Chicken when you require an already built-in SRFI there are no
warnings).

Maybe we would neeed a point in the Kawa documentation about the already
built-in SRFI's.

Thanks again for your hints.
Greetings.
--
Alcides Flores Pineda.

On lun, jul 08 2013, Charles Turner wrote:

> I assume by "contains the following line" you're referring to code
> that used to run without warning, if so, I don't understand that.
> SRFI-26 is not in REQUIRE's feature map by default, so the expression
> (require 'srfi-26) is going to just warn you about its non-exsistence.
>
> CUT and CUTE and actually builtins (Per, why is that, and not part of
> a library instead?) I can't see any removal of srfi-26 mappings from
> the ChangeLogs, so I'm bemused as to how that once worked. Needless to
> say, you can safely remove the line containing (require 'srfi-26) and
> expect to be able to still use the CUT and CUTE forms.
>
> Charles.
>
> On 8 July 2013 03:07, Alcides Flores Pineda <[hidden email]> wrote:
>> Hello everybody:
>>
>> Im running some Kawa code that contains the following line:
>>
>>     (require 'srfi-26)
>>
>> And Im getting the following message:
>>
>>     unknown feature name 'srfi-26' for 'require'
>>
>> However the features of the SRFI-26 (cut/cute macros) are available and
>> they seem to be availabe by default without needing to require them
>> explicitly.
>>
>> Im running kawa 1.13 in Debian Squeeze i386 with Java version 6:
>>   java version "1.6.0_26"
>>   Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
>>   Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
>>
>> Any ideas about this message? Is it possible to supress it? Can it be
>> safely ignored?
>>
>> Greetings.
>> --
>> Alcides Flores Pineda.

Reply | Threaded
Open this post in threaded view
|

Re: Unknown feature name 'srfi-26'

Charles Turner-4
I realise it's a bit uncouth of me to suggest munging through the
source code, but you can see what's there by default in
kawa/standard/require.java (only a minority of what you see on the
implemented SRFI's page is actually "requireable".) A larger subset is
available using the IMPORT form (see
kawa/standard/ImportFromLibrary.java), infact (import (srfi :26))
doesn't complain, but seems a bit odd-ball given the builtins I
mentioned earlier.

I agree we should document this better, or perhaps just add all the
implemented srfi's to the feature map. Some SRFI's are "in Kawa" but
Kawa presents their interfaces in a different way, like SRFI-38 for
shared structures is an output format option rather than something you
REQUIRE. Everything is there, but it would require a bit of book
keeping to present them this way. I think this should be bug in the
form of "cleanup needed" :-)

Charles.
Reply | Threaded
Open this post in threaded view
|

Re: Unknown feature name 'srfi-26'

Per Bothner
In reply to this post by Charles Turner-4
On 07/08/2013 05:08 AM, Charles Turner wrote:

> CUT and CUTE and actually builtins (Per, why is that, and not part of
> a library instead?)

Some srfi are builtins. srfi-26 probably shouldn't be, in retrospect,
but it probably isn't worth changing.

>  I can't see any removal of srfi-26 mappings from
> the ChangeLogs, so I'm bemused as to how that once worked.

I'm not sure either.  I vaguely remember coming across
some similar (or the same) issue not that long ago, but I don't
remember anything concrete.

> Needless to
> say, you can safely remove the line containing (require 'srfi-26) and
> expect to be able to still use the CUT and CUTE forms.

I guess we could make (require 'srfi-26) be a no-op, the
way (import :26 cut) is.  That would be reasonable transition
we if might at some point make srfi-26 non-builtin.
--
        --Per Bothner
[hidden email]   http://per.bothner.com/