[PATCH] Add atomic-box-update! function to (ice-9 atomic)

2023-06-19 Thread Andrew Tropin
* module/ice-9/atomic.scm (atomic-box-update!): New variable. --- I was implementing some concurrent code and started to use (ice-9 atomic), when found out that there is no procedure for updating the value of the atom using another function. IMHO, atomic-box-update! fits well FP paradigm (which i

Re: [PATCH] Add atomic-box-update! function to (ice-9 atomic)

2023-06-21 Thread Andrew Tropin
On 2023-06-21 11:06, Jean Abou Samra wrote: > Le mercredi 21 juin 2023 à 11:06 +0200, Jean Abou Samra a écrit : >> Le lundi 19 juin 2023 à 16:20 +0400, Andrew Tropin a écrit : >> > +  (if (eq? old-value (atomic-box-compare-and-swap! box old-value >> > new-value))

Re: [PATCH] Add atomic-box-update! function to (ice-9 atomic)

2023-06-21 Thread Andrew Tropin
On 2023-06-21 18:54, Jean Abou Samra wrote: >> Le 21 juin 2023 à 18:46, Andrew Tropin a écrit : >> >> Make sense, but it's hard for me to say something valuable on this >> topic. Usually, I don't use eq? and don't have enough knowledge of its >>

Re: [PATCH] Add atomic-box-update! function to (ice-9 atomic)

2023-06-22 Thread Andrew Tropin
On 2023-06-22 01:21, Philip McGrath wrote: > On Wed, Jun 21, 2023, at 11:59 PM, Andrew Tropin wrote: >> On 2023-06-21 18:54, Jean Abou Samra wrote: >> >>>> Le 21 juin 2023 à 18:46, Andrew Tropin a écrit : >>>> >>>> Make sense, but it's

Re: [PATCH] Add atomic-box-update! function to (ice-9 atomic)

2023-07-12 Thread Andrew Tropin
On 2023-06-22 17:42, Philip McGrath wrote: > On Thu, Jun 22, 2023, at 5:02 AM, Andrew Tropin wrote: >> On 2023-06-22 01:21, Philip McGrath wrote: >>> >>> In any case, the current documentation for >>> atomic-box-compare-and-swap! is clear that the comparison

Re: [PATCH] Add atomic-box-update! function to (ice-9 atomic)

2023-08-22 Thread Andrew Tropin
On 2023-06-19 16:20, Andrew Tropin wrote: > * module/ice-9/atomic.scm (atomic-box-update!): New variable. > --- > I was implementing some concurrent code and started to use (ice-9 > atomic), when found out that there is no procedure for updating the > value of the atom using a

[PATCH v2] Add atomic-box-update! function to (ice-9 atomic)

2023-08-22 Thread Andrew Tropin
* module/ice-9/atomic.scm (atomic-box-update!): New variable. --- Changes since v1. Use single-argument proc to avoid potential perfomance problems cause of call to apply. module/ice-9/atomic.scm | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/module/ice-9/atom

[PATCH v3] Add atomic-box-update! function to (ice-9 atomic)

2023-08-24 Thread Andrew Tropin
* module/ice-9/atomic.scm (atomic-box-update!): New variable. --- Changes since v2: 1. Removed unecessary atomic-box-ref. 2. Update docstring to imperative mood. module/ice-9/atomic.scm | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/module/ice-9/atomic.scm b/m

Re: [PATCH v2] Add atomic-box-update! function to (ice-9 atomic)

2023-08-24 Thread Andrew Tropin
On 2023-08-22 19:51, Maxime Devos wrote: > Op 22-08-2023 om 12:59 schreef Andrew Tropin: >> >> * module/ice-9/atomic.scm (atomic-box-update!): New variable. >> --- >> Changes since v1. Use single-argument proc to avoid potential perfomance >> problems cause of c

[PATCH v4] Add atomic-box-update! function to (ice-9 atomic)

2023-09-20 Thread Andrew Tropin
* module/ice-9/atomic.scm (atomic-box-update!): New variable. --- Oops, v3 was incomplete, sending a new version. Changes since v3: Removed stale proc-args. module/ice-9/atomic.scm | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/module/ice-9/atomic.scm b/module

[BUG] Non-local exit in thunk from system-async-mark doesn't restore asyncs block

2023-10-05 Thread Andrew Tropin
ice-9/boot-9.scm:1685:16: In procedure raise-exception: In procedure call-with-unblocked-asyncs: asyncs already unblocked --8<---cut here---end--->8--- -- Best regards, Andrew Tropin signature.asc Description: PGP signature

Define works different when Compile and Eval

2024-06-19 Thread Andrew Tropin
teval (teval 'a))) (test-eval peval) (test-eval primitive-eval) (exit 0) ;; guile -l 2024-06-18-define-bug.scm # output is: ;; a value with # is # ;; a value with # is 1 --8<---cut here---end------->8--- -- Best regards, Andrew Tropin signature.asc Description: PGP signature

Re: Define works different when Compile and Eval

2024-06-21 Thread Andrew Tropin
24-06-18-define-bug)) --8<---cut here---end--->8--- It works the same way as the original code :( > > -- > • attila lendvai > • PGP: 963F 5D5F 45C7 DFCD 0A39 > -- > “A politician is someone asking you to trust them more with power

[PATCH] Remove redundant if in eval-string

2024-06-25 Thread Andrew Tropin
* module/ice-9/eval-string.scm (eval-string): If module is present, it will be set in maybe-with-module wrapper. --- module/ice-9/eval-string.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/module/ice-9/eval-string.scm b/module/ice-9/eval-string.scm index 9cac03632..fc644c099 100644 --- a

[PATCH 0/3] Documentation improvements

2024-06-25 Thread Andrew Tropin
Fix spelling, mentions of removed code and factual inaccuracies. Andrew Tropin (3): Make string-length documentation more correct Change make-dynamic-state mentions to current-dynamic-state Fix spelling doc/r5rs/r5rs.texi | 2 +- doc/ref/api-scheduling.texi | 2 +- doc/ref/srfi

[PATCH 2/3] Change make-dynamic-state mentions to current-dynamic-state

2024-06-25 Thread Andrew Tropin
* doc/ref/api-scheduling.texi: * libguile/fluids.c: --- doc/ref/api-scheduling.texi | 2 +- libguile/fluids.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/ref/api-scheduling.texi b/doc/ref/api-scheduling.texi index d79808049..f6cc942a1 100644 --- a/doc/ref/a

[PATCH 1/3] Make string-length documentation more correct

2024-06-25 Thread Andrew Tropin
* doc/r5rs/r5rs.texi: --- doc/r5rs/r5rs.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/r5rs/r5rs.texi b/doc/r5rs/r5rs.texi index 775c93094..f2e9dda19 100644 --- a/doc/r5rs/r5rs.texi +++ b/doc/r5rs/r5rs.texi @@ -5846,7 +5846,7 @@ Returns a newly allocated string compos

[PATCH 3/3] Fix spelling

2024-06-25 Thread Andrew Tropin
* doc/ref/srfi-modules.texi: * doc/ref/vm.texi: --- doc/ref/srfi-modules.texi | 2 +- doc/ref/vm.texi | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/ref/srfi-modules.texi b/doc/ref/srfi-modules.texi index 02da3e2f2..7e2295acd 100644 --- a/doc/ref/srfi-modules.

[BUG] Eval sets incorrect runtime metainformation

2024-06-25 Thread Andrew Tropin
t a proper goto definition in general case. Would be glad to cooperate on improving all of those points 👆 and would be twice as glad to get some guidance or hear a word of encouragement. -- Best regards, Andrew Tropin signature.asc Description: PGP signature

RE: [PATCH 1/3] Make string-length documentation more correct

2024-06-26 Thread Andrew Tropin
er of characters in the given string. > > , not “return the number of bytes”. Without mentioning the encoding, the > “number of bytes” would be ill-defined anyways. -- Best regards, Andrew Tropin signature.asc Description: PGP signature

RE: [BUG] Eval sets incorrect runtime metainformation

2024-06-26 Thread Andrew Tropin
at you are making a procedure you can insert some >> meta-data for use by your run-time, in an initial vector alist. See >> https://www.gnu.org/software/guile/manual/html_node/Procedure-Properties.html. >> But that's limited and doesn't take macros, etc into account. > > That’s the job of ‘eval’, not the user of ‘eval’. Think the same, eval should respect information provided by reader and attach it to corresponding objects. -- Best regards, Andrew Tropin signature.asc Description: PGP signature

Re: [BUG] Eval sets incorrect runtime metainformation

2024-06-28 Thread Andrew Tropin
On 2024-06-26 18:06, Philip McGrath wrote: > On 6/26/24 07:41, Andrew Tropin wrote:> >>>> That said, the evaluator does attach so-called "meta-data" information >>>> to procedures, such as the procedure name. >>>> https://www.gnu.org/softw

Re: [BUG] Eval sets incorrect runtime metainformation

2024-06-28 Thread Andrew Tropin
. You would have to define a different debugging > interface that looks for source location information in a way different > from program-sources. For me it's not worth it but I encourage you to > experiment with (ice-9 eval); it's just another Scheme program. (You > wo

RE: [PATCH 1/3] Make string-length documentation more correct

2024-06-28 Thread Andrew Tropin
be set up correctly. (setlocale LC_ALL) ;; => "en_US.utf8" (display #\👨‍🏭) ;; => /home/bob/guile-ares-rs/dev/guile/tmp.scm:84:15: unknown character name 👨‍🏭 The same hapenning if I do it in usual REPL: LC_ALL=en_US.utf8 guile -- Best regards, Andrew Tropin signature.asc Description: PGP signature

RE: [PATCH 1/3] Make string-length documentation more correct

2024-06-28 Thread Andrew Tropin
> > Right, I should have tested that instead of assuming it’s the > pre-combined é and a single-codepoint emoji. > Let's keep string-length documentation intact :) It would be cool if somebody apply the rest two patches. -- Best regards, Andrew Tropin signature.asc Description: PGP signature