unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
@ 2011-08-08 10:37 Ian Hulin
  2011-08-09 12:59 ` Peter TB Brett
  0 siblings, 1 reply; 7+ messages in thread
From: Ian Hulin @ 2011-08-08 10:37 UTC (permalink / raw)
  To: guile-user

In the Lilypond code we use (debug-enable 'debug) to give full error
information when we have Scheme lines embedded in a LilyPond source file.

This option has been deprecated in V2.0 but there's no indication in
NEWS of how to supply equivalent functionality.

We'd like to know how to crack this so we don't have to run with
deprecated Guile code when running with V2.

Cheers,
Ian Hulin




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
  2011-08-08 10:37 Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug) Ian Hulin
@ 2011-08-09 12:59 ` Peter TB Brett
  2011-08-09 15:12   ` Thien-Thi Nguyen
  2011-08-22 20:59   ` Ludovic Courtès
  0 siblings, 2 replies; 7+ messages in thread
From: Peter TB Brett @ 2011-08-09 12:59 UTC (permalink / raw)
  To: guile-user

[-- Attachment #1: Type: text/plain, Size: 702 bytes --]

Ian Hulin <ian@hulin.org.uk> writes:

> In the Lilypond code we use (debug-enable 'debug) to give full error
> information when we have Scheme lines embedded in a LilyPond source file.
>
> This option has been deprecated in V2.0 but there's no indication in
> NEWS of how to supply equivalent functionality.

I believe that it's always on in Guile 2.x.

> We'd like to know how to crack this so we don't have to run with
> deprecated Guile code when running with V2.

I'd like to know how to detect if it's needed too, since we have
a similar problem.

                              Peter


-- 
Peter Brett <peter@peter-b.co.uk>
Remote Sensing Research Group
Surrey Space Centre

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
  2011-08-09 12:59 ` Peter TB Brett
@ 2011-08-09 15:12   ` Thien-Thi Nguyen
  2011-08-10 18:50     ` Ian Hulin
  2011-08-22 20:59   ` Ludovic Courtès
  1 sibling, 1 reply; 7+ messages in thread
From: Thien-Thi Nguyen @ 2011-08-09 15:12 UTC (permalink / raw)
  To: guile-user

() Peter TB Brett <peter@peter-b.co.uk>
() Tue, 09 Aug 2011 13:59:50 +0100

   I'd like to know how to detect if it's needed too, since we
   have a similar problem.

One way is to run a check in configure.ac.  In the ttn-do slog
(portability futzing effort) from Guile 1.4.x-only to a wider world,
there is the file baux/snuggle.m4, which can be used, e.g.,:

  AC_CACHE_CHECK([whether Guile accepts (debug-enable 'debug)],
    [guile_cv_ded],
    [SNUGGLE_CHECK([guile_cv_ded],[(debug-enable 'debug)])])
  
  AS_IF([test xyes = x"$guile_cv_ded"],
    ARRANGE-TO-KEEP-USING-IT,
    ARRANGE-TO-OMIT-IT)

The ttn-do configure.ac has other examples.  See:

  http://www.gnuvola.org/software/ttn-do/

BTW, snuggle.m4 is from the SNUGGLE project: "SNUGGLE:
Neutralize Uncharacteristically Grotesque GUILE Library Entropy!"



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
  2011-08-09 15:12   ` Thien-Thi Nguyen
@ 2011-08-10 18:50     ` Ian Hulin
  2011-08-14  6:51       ` Thien-Thi Nguyen
  0 siblings, 1 reply; 7+ messages in thread
From: Ian Hulin @ 2011-08-10 18:50 UTC (permalink / raw)
  To: guile-user

Hi Thien-Thi,
Thanks for the info, it would be useful but we need to things at
run-time.  We've got stuff in an initialization scheme script which is
called from the Lilypond code image and this historically has done the
(debug-enable 'debug) call.  I want to be able to code it for
backwards-compatibility for Guile V2 and Guile V1.8, and also not cause
any deprecation warnings when running with Guile V2.  E.g.

;;; Boolean thunk - are we integrating Guile V2.0 or higher with Lily?
(define-public (guile-v2)
  (string>? (version) "1.9.10"))
.
.
.
(if (not (guile-v2))
  (debug-enable 'debug) ;; Guile V1.8.7
  (begin        	;; Guile V2 options
    (debug-enable 'backtrace)
    (debug-enable 'show-file-name)))

Is there anything I can code when running with Guile V2 that provides
the equivalent functionality to (debug-enable 'debug), but will not
trigger deprecation warnings, or will this:

(if (not (guile-v2))
  (debug-enable 'debug)) ;; Guile V1.8.7

be all I can do?

Cheers,

Ian Hulin





^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
  2011-08-10 18:50     ` Ian Hulin
@ 2011-08-14  6:51       ` Thien-Thi Nguyen
  0 siblings, 0 replies; 7+ messages in thread
From: Thien-Thi Nguyen @ 2011-08-14  6:51 UTC (permalink / raw)
  To: Ian Hulin; +Cc: guile-user

() Ian Hulin <ian@hulin.org.uk>
() Wed, 10 Aug 2011 19:50:23 +0100

   Thanks for the info, it would be useful but we need to things at
   run-time.  We've got stuff in an initialization scheme script which is
   called from the Lilypond code image and this historically has done the
   (debug-enable 'debug) call.

Another idea is to move these small pieces into separate files
and conditionally load them...

   I want to be able to code it for backwards-compatibility for Guile V2 and
   Guile V1.8, and also not cause any deprecation warnings when running with
   Guile V2.  E.g.

   ;;; Boolean thunk - are we integrating Guile V2.0 or higher with Lily?
   (define-public (guile-v2)
     (string>? (version) "1.9.10"))

... based on ‘guile-v2’ (for example).  This might be enough to keep
the deprecation warnings from appearing.  I don't know for sure, however.



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
  2011-08-09 12:59 ` Peter TB Brett
  2011-08-09 15:12   ` Thien-Thi Nguyen
@ 2011-08-22 20:59   ` Ludovic Courtès
  2012-01-09 15:20     ` Andy Wingo
  1 sibling, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2011-08-22 20:59 UTC (permalink / raw)
  To: guile-user

Hi,

(Sorry for the late reply.)

Peter TB Brett <peter@peter-b.co.uk> skribis:

> Ian Hulin <ian@hulin.org.uk> writes:
>
>> In the Lilypond code we use (debug-enable 'debug) to give full error
>> information when we have Scheme lines embedded in a LilyPond source file.
>>
>> This option has been deprecated in V2.0 but there's no indication in
>> NEWS of how to supply equivalent functionality.
>
> I believe that it's always on in Guile 2.x.

Indeed.

>> We'd like to know how to crack this so we don't have to run with
>> deprecated Guile code when running with V2.
>
> I'd like to know how to detect if it's needed too, since we have
> a similar problem.

(cond-expand (guile-2 'alright)
             (guile (debug-enable 'debug)))

Thanks,
Ludo’.




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug)
  2011-08-22 20:59   ` Ludovic Courtès
@ 2012-01-09 15:20     ` Andy Wingo
  0 siblings, 0 replies; 7+ messages in thread
From: Andy Wingo @ 2012-01-09 15:20 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guile-user

On Mon 22 Aug 2011 22:59, ludo@gnu.org (Ludovic Courtès) writes:

> (cond-expand (guile-2 'alright)
>              (guile (debug-enable 'debug)))

Or:

  (cond-expand
    ((not guile-2) (debug-enable 'debug)))

Regards,

Andy
-- 
http://wingolog.org/



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-01-09 15:20 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-08 10:37 Compatibility V1.8 and 2.0 - deprecated (debug-enable 'debug) Ian Hulin
2011-08-09 12:59 ` Peter TB Brett
2011-08-09 15:12   ` Thien-Thi Nguyen
2011-08-10 18:50     ` Ian Hulin
2011-08-14  6:51       ` Thien-Thi Nguyen
2011-08-22 20:59   ` Ludovic Courtès
2012-01-09 15:20     ` Andy Wingo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).