On Thu, 8 Jun 2023 at 17:38, Emmanuel Charpentier wrote:
> It seems that niladic lambdas are treated like constants.
>
In GNU APL lambda is dyadic if it contains a reference to ⍺ or monadic if
it uses ⍵. There is no way to distinguish a call of niladic lambda from a
definition of niladic lambda in
On Sun, 10 Sept 2023 at 01:08, Stephen Lewis wrote:
> Writes elements in 4 row matrix with spurious
> extra characters and a blank line.
One thing you could do is to increase the print width ⎕PW so that it
doesn't wrap, but ultimately this default printout is intended for
human consumption.
Shor
On 2014-01-27 17:26:56, Juergen Sauermann wrote:
> should be fixed in SVN 108.
It appears to work now, but it will give incorrect results in summer in
zones where daylight saving time is used. Maybe something along the
lines of difftime(mktime(localtime(…)), mktime(gmtime(…))) would work
on all t
Hi,
After lines are neatly wrapped in r109 in SVN, but I think there's some
off by one error; it behaves as if ⎕PW was ⎕PW-1.
⎕PW⍴'X'
XXX
X
-k
On 2014-01-28 14:23:01, Juergen Sauermann wrote:
> that was on purpose because the default ⎕PW is 80 and on some
> 80 column terminals this causes an extra empty line to be printed.
If there are terminals like that, wouldn't it be easier to just initialize
⎕PW to 79 while keeping relation between
Hi,
It seems that functions requiring “near-real numbers” as arguments throw
DOMAIN ERROR when given a value represented internally as complex even
if imaginary part is exactly equal zero.
1 > 0J0
DOMAIN ERROR
1>0
^^
1 ⌊ 0J0
DOMAIN ERROR
1⌊0
^^
etc.
Note: from
On 2014-02-01 01:37:23, Elias Mårtenson wrote:
> As far as I understand, OP/ is supposed to splice OP in between every element
> in the array and return the result.
>
> Based on this, I would expect that ,/1 2 3 4 and 1,2,3,4 to be equivalent.
That's how reduction is informally described, but joi
As of revision 116, the problems with wrapping mixed arrays whose ⍕ is of
⎕PW width (or ⎕PW-1 before r113) still persist.
But there is another issue with wrapping which I think may be related.
When displaying nested vector whose elements are vectors, only the first
element is treated as expected.
Hi,
1. Trying to )SAVE (or )CONTINUE) while stopped on SYNTAX ERROR,
causes segmentation fault:
+
SYNTAX ERROR
+
^
)SAVE FOO
SEGMENTATION FAULT
-- Stack trace at main.cc:113
--
On 2014-02-04 12:17:16, Elias Mårtenson wrote:
> When I look at the result from ,/1
> 2 3 it looks like an array that contains a single element: another array with
> the values 1 2 3 in it. But it isn't.
Technically you aren't wrong at all, it IS an array that contains a
single element. But one-e
Hello,
There are multiple problems with shared variables facility.
1. Shared variable protocol is not safe in multi user environment.
When user starts apl with shared variables enabled, it removes all
other users' sessions from shared database as “stale” so currently
even honest user without mal
On 2014-02-12 12:58:05, Elias Mårtenson wrote:
> The key feature that is needed is a way to be informed when a variable is
> changed.
Shared variables have such feature. Though, it's probably not the right
place for you too look in this case, as shared variables are whole separate
name class and
On 2014-02-13 16:47:10, Juergen Sauermann wrote:
> Not sure, though, what is wrong with:
>
> ⎕PW⍴'='
> ==
Oh, absolutely nothing, it was just a visual aid to show where ⎕PW ends.
Sorry for confusion, and thanks for the fixes.
-k
On 2014-02-14 16:15:33, Juergen Sauermann wrote:
> fixed in SVN 120.
In r122, it doesn't give domain error anymore, but I think that
results are not correct:
⎕RL
1
8⎕CR Y←⊂[1]?2 10⍴2
┌→──┐
│┌→──┐ ┌→──┐ ┌→──┐ ┌→──┐ ┌→──┐ ┌→──┐ ┌→─
On 2014-02-20 01:05:16, Elias Mårtenson wrote:
>
> ∇N disploop S
> →(N=0)/0
> next:
> S←next S
> disp ← '.#'[1+S]
> ⎕DL ÷4
> N←N-1
> →next
> ∇
In this function, next is 2 (a label) rather than function you
defined earlier. So you literally have [3] S←2 S.
> B
On 2014-02-16 18:09:06, Juergen Sauermann wrote:
> Ad 1) I changed the assertions Symbol.cc to short warnings visible in )MORE.
I wouldn't guess to check )MORE upon getting VALUE ERROR on shared
variable, but I guess it's better than failed assertion.
> Ad 3) hopefully fixed.
I've mistakenly put
Hi again,
There are still (r148) some problems similar to previously reported.
When passing a big array as shared variable, instead of being
truncated, now its tail is corrupted:
0⎕SVO'X'
1
X←489⍴2
¯2↑X
2 ¯1254096894
This suggests some nasty out-of-bounds read.
And, if array is
Moreover, integral values in range 1+2⋆31 to (2⋆32)-1
are incorrectly interpreted as their two's complement
negative equivalents:
0⎕SVO'X'
1
X←1+2⋆31
X
¯2147483647
-k
On 2014-03-04 18:53:29, Juergen Sauermann wrote:
> They say that f ⍤y is a function which is then called with arguments B and
> possibly A.
> Thus Z is a value and not a function; the function is created internally.
I guess the problem is that GNU APL doesn't really have what most people
understan
On 2014-03-06 10:53:12, Elias Mårtenson wrote:
> ∇λ←avg ⍵
> λ←(+/⍵)÷⍴⍵
>
> This will of course fail when the user tries to save the function.
I'm not using Emacs nor your mode, but why should it fail?
This works:
⎕FX 'λ←avg ⍵' 'λ←(+/⍵)÷⍴⍵'
avg
And so does this:
∇avg
[1]
On 2014-03-09 13:36:11, Juergen Sauermann wrote:
> Not sure though how this is related to how the rank operator is computed.
Related to how it is parsed, because in NARS2000 there is no difference
for operator's syntax whether its operands are functions or some other
values. Functions might not b
On 2014-03-11 17:29:08, Frederick H. Pitts wrote:
> If one executes
>
> i ← 0
> 63 1 ⍴ { ⍵ , i ← ¯1 + 2 × i + 1 }¨ 1 + ⍳ 63
>
> one should get a 2-column table of bit count and corresponding maximum
> positive representable integer (assuming high order bit is a sign bit).
> Th
On 2014-03-19 23:16:32, Elias Mårtenson wrote:
> I see. So the way I see it, I should actually use 2 OP/X instead? I seems to
> actually do what I expected.
It if does what you need then sure, but it's a very different thing
than scan:
,\'abcd'
a ab abc abcd
2,/'abcd'
ab bc cd
-
On 2014-03-21 00:23:41, Elias Mårtenson wrote:
> One of my experiments was very short, and tantalisingly close to correct:
>
> ≠\V
>
> Unfortunately, it's not quite right. Does anyone have an idea how to coerce
> that one into being right?
I couldn't come up with anything better, but if you
On 2014-03-30 20:50:31, baruc...@gmx.com wrote:
> At first glance, it seems to work: http://baruchel.hd.free.fr/apps/apl/i/
> You can know use it as an online interpreter. I will add some colors/themes
> in the days to come, but the most difficult part is done.
Great work!
It's really nice to hav
On 2014-03-31 15:37:45, Elias Mårtenson wrote:
> Are you sure it's a bug? You seem to be taking the value of "r" when it has no
> value.
I think the problem is that you can't edit a function that is currently
on SI stack, not that Parse erred.
-k
On 2014-03-31 15:40:06, Elias Mårtenson wrote:
> The Nable editor should (in my opinion) open a separate editor just like the
> Emacs mode does. :-)
That's one way to do things.
But wouldn't it be nicer to just use something like )EDIT rather than
hijacking ∇ for that purpose? I actually hated th
On 2014-03-31 10:15:23, Blake McBride wrote:
> I still think there is a small bug, however. Seeing the message 'problem
> 'Nabla.cc:444' would make anyone think there was an internal problem. APL
> had
> a standard message when that type of event occurred. GNU APL should display
> the standard
On 2014-04-26 12:08:14, Juergen Sauermann wrote:
> I could make the ∇-editor aware that a )COPY is in progress and that
> functions shall be deleted automatically by the ∇-editor.
I like a lot that there is now a command that sources another file
raw, much like "." in shell or "#include" in cpp.
On 2014-04-26 07:13:21, enz...@gmx.com wrote:
> btw if you can take a look at the FILE_IO code in
> http://lists.gnu.org/archive/html/bug-apl/2014-04/msg00269.html
> and give me an idea why the difference between c popen and apl popen - null
> vs no '10' at end of data still returned - i'd apprec
On 2014-04-26 21:15:43, Elias Mårtenson wrote:
> On 26 April 2014 20:52, Kacper Gutowski wrote:
>> ∇mean[0]
>> R←mean B
>> R←(+/B)÷⍴B
>> ∇
>>
>> This can be )COPY-ied many times without any problems as it enters the
>> editor with a name only a
On 2014-04-27 11:54:09, enz...@gmx.com wrote:
> I have never seen or used the symbol ∵ called 'because' U2235 before - and
> it is not in the supplied apl.xmodmap
> perfect place left open for it is on vV∪∵shift-alt-v ?
> btw what does it do - is it a type of 'apl exception' :)
I'm also cur
On 2014-05-04 22:21:48, Elias Mårtenson wrote:
> I was reading the following thread on comp.lang.apl:
> https://groups.google.com/
> d/msg/comp.lang.apl/ZmdHbyqSM4M/522hE9rDRTkJ
>
> In it, it is suggested that the following statement will work:
>
> (3 3⍴⍳9)×⍤1 ⍳3
>
> However, GNU APL give
Apparently, when array contains a big number that is to be displayed
in exponential notation, the whole column containing it is printed
with exponent. If array of mixed type has char and such big number
in the same column, PrintBuffer segfaults on it:
+X←?2 3 3⍴100
40 18 54
19 66 55
55 60
Outer product of any function with empty left or right argument,
results in segmentation fault:
'abc' ∘.= ''
SEGMENTATION FAULT
-- Stack trace at main.cc:122
Thanks for previous two. Is it expected, by the way, that assert
ends in a segfault? Isn't this also a bug?
Anyway, any scalar function given empty right argument and non-conforming
non-empty left argument misses check for shape equality:
⍬ = 1 2
LENGTH ERROR
⍬=1 2
^^
→
Another one. Reduction of an empty array along the last non-singleton
AND non-zero axis produces a weird value which crashes GNU APL when
copied (e.g. when assigned to variable; nothing happens when it's simply
printed or directly examined with rank/depth/whatever):
X ← +/[3] 0 0 2 0⍴ 0
==
0↑0
SEGMENTATION FAULT
-- Stack trace at main.cc:122
0x7f81f5e43b45 __libc_start_main
0x4359b5 main
0x52a66d Workspace::immediate_execution(bool)
0x465
On 2014-05-27 18:06:06, Juergen Sauermann wrote:
> Note that there are some subtle differences between IBM APL2 and GNU APL
> when localizing ⎕-vars. In IBM APL2 they are undefined after localizing
> them.
> In GNU APL they are pre-initialized with their respective default values.
> This
> gives si
Hi,
Using index with axis on a vector results in assertion failure.
It works correctly with arrays of higher dimension or without axis.
1⌷[⎕IO]⍳1
==
Assertion failed: IX.value_count() != 1
in Function: index
i
On 2014-06-05 22:39:52, Elias Mårtenson wrote:
> May I also ask that after reading the main config file, the interpreter also
> reads $HOME/.gnu-apl.d for load user-level configuration. And finally, it
> should also check the commandline so that the paths can be overridden on a
> session-basis.
Do
On 2014-06-10 14:08:47, Blake McBride wrote:
> It is funny because I call this function a lot. Sometimes it works, other
> times it gives me the domain error. Here are some more facts:
>
> DOMAIN ERROR
> Tmfmt[1] z←(2 0⍕⍉d[,1;]),':',2 0⍕⍉(d←(2⍴100)⊤,d)[,2;]
> ^ ^
On 2014-07-02 14:36:37, Juergen Sauermann wrote:
> I have added monadic ⊣ and ⊢ see SVN 355.
>
> Instead of making them identical I though it might be better to do
> different things. What I came up with is this:
>
> ⊢ B returns (a copy of) B as a normal APL value.
> ⊣ B also returns a copy of B,
On 2014-07-09 16:14:32, Juergen Sauermann wrote:
> Hi,
>
> actually - no. I called it OUTER_OMEGA to make clear what it does.
> Maybe you like
>
> { ⍵ + {⍵×WW} 10 ⊣ WW←⍵ } 100
> 1100
>
> imore?
I think the main problem isn't the length of variable's name but the
fact that regular variable
On 2014-07-08 18:03:21, Juergen Sauermann wrote:
> SOL_SOCKET is 1 on linux but according to the man page of TCP(7) SOL_TCP (=6)
> should be used.
> I have changed the code to use he number 6 instead of SOL_TCP. SVN 368.
Acctually, it should be IPPROTO_TCP as both mandated by POSIX and
described i
On 2014-07-14 00:01:13, Elias Mårtenson wrote:
> Most modern (and some not-so-modern) languages have a standard way of
> attaching
> documentation to functions and other symbols.
(...)
I think the most natural way to describe a function is simply by
starting function *body* with a comment:
∇ Z←
On 2014-07-14 16:15:32, Juergen Sauermann wrote:
> Since ⎕ES is not ISO-standard anyhow, I take the freedom to trade performance
> for APL2 compatibility.
But it is. See sections 11.5.7 and 11.6.5.
And standard says it should return nil for empty right
argument, which means not returning any valu
Whoops, this thread was about the message rather than return value.
About that, standard states that event-message is local to a context and
that ⎕ES should create an exception in caller's context, but I don't
think it's properly specified what does it exactly mean.
But the point is, that ⎕ES _is_
When either of arguments of = has imaginary part of magnitude greater
than comparison tolerance, a domain error is thrown.
⎕CT
1E¯13
0J1 = 0J1
DOMAIN ERROR
0J1=0J1
^ ^
There are no conditions under which = is allowed to throw a domain
error at all so this is serious.
W
2⎕TF re-uses real part for imaginary part:
X←5J0
10⎕CR'X' ◊ 2⎕TF'X'
X←5J0
X←5J5
-k
On 2014-07-15 20:09:40, Juergen Sauermann wrote:
> Except that (not so obviously) :
>
>
> 1E¯15 = 1E¯14
> 0
Sorry, my mistake. You're, of course, right.
Current (r376) behaviour seems to be correct with one exception:
1E¯15 = 1E¯14
0
1E¯15J0 = 1E¯14J0
1
Both should be zero,
On 2014-07-31 15:54:44, Peter Teeson wrote:
> Looked in the APL2 IBM manual but do not understand how to determine the data
> type of a variable.
> Neither the primitives nor the Quads sparked the answer in my brain.
> It must be something pretty obvious but not to me right now.
>
> So if I have
On 2014-07-31 22:49:06, Peter Teeson wrote:
> David used theta as well. Is that also an available symbol?
> i.e. a greek letter not otherwise used by the APL language?
You're probably refering to ⍬. This is not a theta. This symbol
is called zilde and it should look like zero with superimposed
t
On 2014-07-31 22:51:39, Blake McBride wrote:
> Never heard of χ. Not on my keyboard. Sounds like I need it. What is the U
> code for it? Is it U+03a7 or U+03C7?
It's a small chi, u+03c7.
No APL kayboards have it because it's indeed unique to GNU APL.
-k
See below.
As a side note, you might want to look at warnings that lintian
gives for debian package even if most of them can be safely ingored.
-k
Index: workspaces/APL_CGI.apl
===
--- workspaces/APL_CGI.apl (revision 413)
+++ work
Using rank operator with empty argument of derived function, results in
either assertion failure (for positive right operand) or segmentation
fault (for non-positive right operand). It works correctly (resulting
in an error) when axis syntax is used instead of standard-mandated
numeric right opera
That's interesting thing to see in GNU APL.
Negative exponents are obviously tricky to do, but what about using
boolean functions? It's a quite convenient way to succinctly express
iteration. But right now GNU APL gives somewhat unexpected results:
({2+⍵÷2}⍣≡) 9
9
({2+⍵÷2}⍣=) 9
VALEN
On 2014-08-13 19:42:25, Juergen Sauermann wrote:
> I believe the VALENCE ERROR comes because = is dyadic and
> the lambda is monadic?
>
> In GNU APL (and in the ISO standard) there is no monadic =, is it?
> Maybe in Dyalog APL there is?
No, it was supposed to be dyadic. I'm not sure how GNU APL
(⍬/X)←⍬ ⊣ X←⍬
SEGMENTATION FAULT
-- Stack trace at main.cc:140
0x7f4f289fbb45 __libc_start_main
0x43b725 main
0x556c75 Workspace::immediate_execution(b
{1=⍵} ,1
1
{1=⍵[1]} ,1
1
{⍵=1} ,1
1
{⍵[1]=1} ,1
==
Assertion failed: Avec::is_quad(idname[0])
in Function: get_nc
in file: NamedObject.cc:42
Call stack:
Currently GNU APL uses LCG with modulus 2⋆64 and then reduces values modulo
desired range. This, beside being slightly biased for ranges not dividing
the modulus, yields reduced periods when range is power of two.
?10 16⍴16
11 2 13 12 15 6 1 16 3 10 5 4 7 14 9 8
11 2 13 12 15 6 1 16 3 10 5
I don't think there is anything to gain by changing the main LCG part
given the constraints. I don't know how good are the parameters used by
GNU APL but they should be okay since those are the ones proposed by Knuth.
LCGs have a number of well known weaknesses, one of which is that their
less si
Oh, I see you already fixed the bias exatly the way I wanted you to
in r440 even before I posted that :)
I still recommend using xorshift premutation instead of bit reversal
and iterating ⎕RL only once per output value.
-k
When input to ⎕ is empty (just hit enter upon the prompt), it results
in assertion failure:
⎕
⎕:
items_allocated = 16
items[0] =
idx = 0
==
Assertion failed: 0 && "Bad index"
in Function: operator[]
in file:
When used with negative shape as left argument and non-literal array
on the right, reshape dies with segmentation fault instead of raising
a DOMAIN ERROR.
¯1⍴0,0
SEGMENTATION FAULT
-- Stack trace
1↑⍤0 ⍬
SEGMENTATION FAULT
thread: 0x7fb6c6ec2740
thread_contexts_count: 1
busy_worker_count: 0
active_core_count: 1
thread # 0: 0x7fb6c6ec2740 pool sema: 0 RUN job: 0 no-name
-- Stac
Hello,
Since some time dpkg has been complaining about missing entry in libapl.info.gz:
install-info: warning: no info dir entry in `/usr/share/info/libapl.info.gz'
That's just a minor annoyance but I believe it should be easy to fix.
Thanks.
-k
I just checked out 592 and it failed to build because of missing buildtag.hh.
Apparently this is just a typo in configure: cd src source ./buildtag ; cd ..
Missing &&.
-k
On Fri, Apr 24, 2015 at 7:23 PM, Juergen Sauermann
wrote:
> Now, ATF files are what )IN and )OUT read resp, produce. Chances are that
> those
> ATF files are the same as for IBM APL2. In that case all you need is to
> write them in Dyalog and read them back into GNU APL using command )IN.
I remem
On Sat, Apr 25, 2015 at 4:38 AM, Christian Robert
wrote:
> a←1 0 0 0 0 1 0 0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0
> b← 26 27 28
> a[b]
> 0 0 0
> b⊃a
> DOMAIN ERROR
> b⊃a
> ^ ^
I think this should be rank error rather than domain one. But it should
be
On Sat, Apr 25, 2015 at 3:43 AM, Blake McBride wrote:
> Definitely a bug!
Or consistent extension!
-k
On Fri, May 22, 2015 at 4:03 AM, wrote:
> Is there any reason HTML∆attr does not like single characters?
It's because 'a' in APL is not a single-element vector as one might
expect, but a scalar value. Use:
'left' HTML∆attr ,'a'
-k
On Sat, Jun 20, 2015 at 12:32 PM, Louis Chretien wrote:
> I agree the error message should not be as dire as a segfault, but the basic
> intent seems dubious…
There's nothing inherently wrong with this. Argument of ⎕EX should
be a character array with rows containing identifiers (possibly padded
There is a number of problems with circle functions.
Inverse trigonometric and hyperbolic functions ¯1 ¯2 ¯6 ¯7
as well as function 0 are not properly extended to complex
values when given argument is real; they work correctly with
real-valued complex cells:
0 ¯1 ¯2 ¯6 ¯7 ∘.○ ¯2 ¯2J0
0.
I have no idea how that happens.
¯1J0⋆2
DOMAIN ERROR
¯1⋆2
^ ^
-k
On Thu, Jul 23, 2015 at 6:55 PM, Juergen Sauermann
wrote:
> GNU APL supports the entire Unicode character set to the extent that your
> platform supports (= is able to display) it.
On Thu, Jul 23, 2015 at 5:59 PM, Fred Weigel wrote:
> The current definition of letter includes (...)
> 0.3(overbar
On Sun, Aug 30, 2015 at 12:02 AM, Alexey Veretennikov
wrote:
> Thanks, it looks indeed like I have to specify all sizes in GNU APL.
In Dyalog you can use Dyalog's extensions to the standard but in GNU
APL, you can use GNU APL's extensions. You don't need to specify all
the sizes if you choose an
On Mon, Aug 31, 2015 at 2:19 AM, Louis de Forcrand wrote:
> Now, my two questions aren't necessarily bugs, but the
> blog is titled "bugs and discussion". Anyway, how would I go about
> repeating a function using ⍣ until the answer reaches a certain value?
> e.g.:
> FIB ← { 2 ↓ ( { ⍵ , +/
On Sun, Sep 13, 2015 at 11:53 PM, Louis de Forcrand wrote:
> Is it possible to terminate a function while it's running
> (eg. when you accidentally set a very large number
> as an operand)?
Pressing Control-C should signal ATTENTION which should suspend
execution of current function.
> I read a
By the way, if you start your file with ⍝! or #!, then you will be
able to )LOAD or )COPY changes into running session which might be
fairly convenient if you prefer to use external editor (which you
certainly are; line editors fell out of fashion many years ago) and
prefer it not to be Emacs.
Fol
On Sun, Sep 20, 2015 at 6:27 PM, wrote:
> or do the trailing double colon have significance?
That's how cross-references look like in GNU Info. Remove the double
colon and it won't be recognized as a link any more.
See
https://www.gnu.org/software/texinfo/manual/info-stnd/info-stnd.html#Parts-o
On Sun, Sep 20, 2015 at 9:57 PM, wrote:
> Should the execute primitive include the structure data? I thought that the
> phrase in the subject line would return zero. I thought the first element
> would return a scalar 5, and the second would return a single element five.
> Both evaluate to a scal
On Sat, Oct 10, 2015 at 3:29 AM, wrote:
> I am struggling to follow our previous conversation. Pretty much, I am
> confused about the source of the POST contents. I believe you mentioned that
> it should come from stdin, and if I understood, it is not possible to use it
> jointly with CGI scripti
On Mon, Oct 12, 2015 at 5:48 AM, wrote:
> Why do you choose to write it like this?:
> ContentsOfPOST←{⍵, FIO∆fread 0}⍣{⍺⊢FIO∆feof 0}''
>
> This method (in my limited knowledge) seems equivalent:
> ContentsOfPOST←(FIO∆feof 0) FIO∆fread 0
I don't think it is.
FIO∆fread takes as its left argument a
On Tue, Oct 13, 2015 at 12:17 PM, Elias Mårtenson wrote:
> It should be new set_size/8+1 on both the like with new and the subsequent
> memset() one.
You mean (set_size+7)/8 :)
I was almost expecting this to be related to that this algorithm's
termination probability converges to 1 very slowly w
On Thu, Oct 22, 2015 at 3:29 PM, Michael Potter wrote:
> APL2000 does not appear to have an )OUT command.
>
> We get:
> "INCORRECT COMMAND" in response to:
> )OUT
> )OUT SOMEFILE
> )OUT C:SOMEFILE
I think in APL2000 it should be ]OUT starting with square bracket.
At least that's what comp.lang.ap
On Fri, Oct 23, 2015 at 5:45 AM, wrote:
> Is there documentation on how to use ⎕TRACE ? I ran info apl | grep ⎕TRACE
> and found nothing. It does not look like it is listed in the IBM APL2 manual
> either.
⎕STOP and ⎕TRACE are defined in ISO 13751. They are part of
optional facility "Trace and
Using ⎕TRACE or ⎕STOP with some other symbol than user defined
function either through T∆/S∆ or directly, either for querying or
setting, results in a segmentation fault:
A←3
⎕TRACE'A'
SEGMENTATION FAULT
--
--- src/QuadFunction.cc (revision 686)
+++ src/QuadFunction.cc (working copy)
@@ -1604,7 +1604,7 @@
}
Function * fun = fun_symbol->get_function();
- if (fun_symbol == 0)
+ if (fun == 0)
{
CERR << "symbol " << fun_name_ucs << " is not a function" << endl;
return
On Fri, Oct 30, 2015 at 11:01 AM, Elias Mårtenson wrote:
>
> 4×+/{(¯1*⍵+1)÷¯1+2×⍵}¨⍳100
>
> The above expression performs 1 million iterations, but is also allocates a
> 1 million element array to do so.
I don't know GNU APL internals well enough to speak about when and how
memory is al
On Fri, Oct 30, 2015 at 2:39 PM, Kacper Gutowski wrote:
> i←0 ◊ 4×{⍵+(¯1*i+1)÷¯1+2×i←i+1}⍣100⊢0
This is slightly faster and doesn't use global variables:
↑{(+/⍵[1],4÷1↓⍵),4 ¯4+1↓⍵}⍣50⊢0 1 ¯3
Nowhere near “simple and natural,” though.
-k
On Sun, Nov 8, 2015 at 12:05 AM, wrote:
> I thought it would have been as simple as b⊂subsections
> because they are the same length, but that also yields an error.
If I understand your problem correctly, it's simply b⊂¨subsections.
-k
On Fri, Jan 15, 2016 at 4:29 AM, wrote:
> I was wondering if anyone is familiar enough with xmodmap to know why it
> would disable the existing Alt-Tab functionality in xorg (switching between
> windows) when the key combination has no apparent use in the interpreter.
> I am using this file:
> tr
On Mon, Feb 15, 2016 at 12:08 AM, wrote:
> the system's word count mechanism says length four. APL says length three, I
> thought this was going to be length 1 and the symbol '⍝'. Does anyone know
> what I am doing incorrectly:
>
> a@a:~/aplstuff$ echo "⍝" > txt
> a@a:~/aplstuff$ cat txt
> ⍝
> a@
On Sun, Feb 21, 2016 at 10:38 PM, wrote:
> it seems that format adds fuzz after a certain point.
It's not a “fuzz,” but an artifact of using IEEE 754 double precision
floating point numbers. ISO APL leaves a lot of freedom when it comes to
representation of numbers, but when using IEEE floats,
On Thu, Mar 3, 2016 at 12:40 PM, Juergen Sauermann
wrote:
> the IBM APL2 language reference says (page 111):
>
> If R is a simple scalar, ⊂ R is R. If R is not a simple scalar, the depth of
> R is 1+ ≡R.
>
> And the ISO standard says the same (page 169):
>
> Z ← ⊂B
> Note: If B is a simple-scalar
On Sat, Mar 5, 2016 at 6:45 AM, Christian Robert
wrote:
> [0] z←Execute cmd;⎕io;fh
> [7] Fini: ⎕FIO[25] fh
> [8] ⊃⊃z
(...)
> I do not understand why it repeat the result twice. one via stdout and one
> via boxing as I can guess.
The function returns z as indicated in its header, but before d
On Sun, Mar 13, 2016 at 6:20 PM, Juergen Sauermann
wrote:
> it actually does create conflicts.
>
> In IBM APL2 and in GNU APL, the expression
>
> ⍺ (f g h) ⍵
>
> gives a 3 item vector with the items being ⍺, (f g h), and ⍵.
> In Dyalog APL it gives (quote):
>
> (⍺ f ⍵) g (⍺ h ⍵) ⍝ dyadic (fgh) for
On Mon, Mar 14, 2016 at 2:03 PM, Juergen Sauermann wrote:
> Consider this:
>
> 1 (+//) 1 2 3 4
> 1 2 3 4
FWIW, Dyalog returns the same, but it certainly does something weird
I don't understand here. It treats it as an operator even when it
says it is a function:
f←/
⎕NC'f'
3
Logarithm of negative real number fails to coerce it to complex and
results in a malformed value:
2⍟¯1
0.0
2⍟¯1J0
0J4.532360142
-k
1 - 100 of 220 matches
Mail list logo