[Jprogramming] ncurses mvwaddch at newwin unexpected behaviour

james faure james.faure at epitech.eu
Thu May 17 23:32:58 UTC 2018


Indeed, almost all of the mv* functions are macros;

The 'api/ncurses' script has redefined some of these for use in J, but hasn't done this consistently.

In fact it seems to be a little out of date, I also had to update it to read ncurses.so.6 rather than .5

My ncurses header still went to the trouble of declaring all the macros as library functions, which certainly explains the strange results !

________________________________
From: Programming <programming-bounces at forums.jsoftware.com> on behalf of bill lam <bbill.lam at gmail.com>
Sent: Friday, May 18, 2018 1:19:47 AM
To: Programming forum
Subject: Re: [Jprogramming] ncurses mvwaddch at newwin unexpected behaviour

some ncurses functions are implemented as macro. C compliers can expand
them into real function call during compilation but J can't. I'll look if
this is the reason why window functions failed.

On Fri, May 18, 2018, 6:48 AM james faure <james.faure at epitech.eu> wrote:

> Hello,
> Just wrote a classic snake game in ncurses, however I came across
> something inexplicable - The code below hangs for a sec, then exits.
> The problem is presumably with the mvwaddch function. mvwaddstr also fails.
> I was able to circumvent this by simply using the default screen returned
> by initscr, but that isn't ideal!
>
> require 'api/ncurses'
> cocurrent 'ncurses'
>
> init =. monad define
>   stdscr_ncurses_ =: initscr''
>   w =. newwin 20;60;0;0
>
>   NB. Works fine:
>   NB. getch'' [ mvaddch 10 ; 10 ; '*'
>
>   NB. hangs for a second then exits, why ?
>   mvwaddch w ; 10 ; 10 ; '*'
>   wgetch < w
> )
>
> init''
>
> Thanks for any help,
> J4
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm


More information about the Programming mailing list