00:13:55
##forth
<veqq>
I'm sorry, I meant: How would you implement an array language like APL in Forth
04:52:31
##forth
<neauoire>
Have you seen CoSy?
05:47:56
##forth
<xentrac>
it vaguely sounds familiar
05:58:44
##forth
<neauoire>
he's in like every forth meetup showcasing that thing
05:58:56
##forth
<neauoire>
there's a bunch of videos o youtube showing the implementation details and ux
06:08:32
##forth
<xentrac>
oh neat
06:08:44
##forth
<xentrac>
I should check them out
06:08:54
##forth
<xentrac>
I haven't been very good at doing things lately
08:23:45
##forth
<veqq>
neauoire: Thank you! I had not
09:35:51
##forth
<veltas>
Is there source for it somewhere?
09:37:03
##forth
<veltas>
Would be relatively easy to SIMD / parallelise array op words
13:34:49
##forth
<pgimeno>
veltas: the difference is that, as I see it, encoding strings as numbers makes programming easier (you can store them in regular variables or constants, for one) while getting rid of stacks in favour of using bignum-as-Turing-tape complicates everything a lot
13:35:08
##forth
<pgimeno>
my remark was not just the "it can be done" kind, but the "it can be useful" kind
13:54:27
##forth
<crc>
veqq: an apl-like thing in forth is something I'm interested in writing, but I've not had time to devote to this yet
13:56:05
##forth
<veltas>
pgimeno: Sorry didn't mean to seem dismissive
13:56:38
##forth
<crc>
(I've not personally looked at this due to license, but it's described as conway's life in an apl written in forth)
14:33:38
##forth
<cleobuline>
mforth: 1 1024 << .
14:33:38
##forth
<mforth>
179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216
14:35:18
##forth
<cleobuline>
mforth: 255 NUM-TO-BIN
14:35:18
##forth
<mforth>
11111111
14:38:22
##forth
<cleobuline>
mforth: " Un affreux monstre poilu avec des gros yeux et des grandes dents " IMAGE
14:38:22
##forth
<mforth>
DEBUG: Stack underflow in IMAGE
14:40:28
##forth
<cleobuline>
mforth: " Un affreux monstre poilu avec des gros yeux et des grandes dents " IMAGE
14:40:52
##forth
<cleobuline>
nice :)
14:41:19
##forth
<cleobuline>
mforth: " a string " .
14:41:19
##forth
<mforth>
0
14:41:25
##forth
<cleobuline>
perfect
16:09:21
##forth
<konilo-bot>
Konilo via IRC
16:09:58
##forth
<crc>
(konilo bot open for testing, for now; full release to come)
16:19:14
##forth
<cleobuline>
crc what is the syntax ?
16:22:56
##forth
<crc>
a "!konilo hello" in the channel to start a session; sigils guide the compiler; word names will differ from standard in some cases
16:23:24
##forth
<crc>
an example definition might look like:
16:23:40
##forth
<crc>
:n:square (n-m) dup n:mul ;
16:24:30
##forth
<crc>
strings: 'hello_world s:to-upper s:put nl
16:24:44
##forth
<crc>
numbers are prefixed with a # sigil: #1 #2 n:add
16:25:36
##forth
* crc will be responding to questions periodically; at work, so response times will vary based on how busy we are
18:00:42
##forth
<thrig>
response times will also depend on the speed of light and routing delays
18:07:29
##forth
<crc>
a few notes on this: each user has a separate image, stacks, and blocks. Data will ultimately be persistent. Runtime per query is limited to approx. 60 seconds.
19:02:34
##forth
<cleobuline>
mforth: WORDS
19:02:34
##forth
<mforth>
USERNAME .S . + - * / MOD DUP DROP SWAP OVER ROT >R R> R@ = < > AND OR NOT XOR & | ^ ~ << >> CR EMIT VARIABLE @ ! +! DO LOOP I WORDS LOAD CREATE ALLOT ." CLOCK BEGIN WHILE REPEAT AGAIN SQRT UNLOOP +LOOP PICK CLEAR-STACK PRINT NUM-TO-BIN PRIME? FORGET STRING " 2DROP IMAGE TEMP-IMAGE
19:02:50
##forth
<cleobuline>
mforth: LOAD "test.fth"
19:02:59
##forth
<cleobuline>
mforth: HELLO
19:02:59
##forth
<mforth>
Hello cleobuline How are uou ?
19:16:21
##forth
<cleobuline>
mforth: 3 TEST-CASE
19:16:22
##forth
<mforth>
TROIS
19:16:57
##forth
<cleobuline>
mforth: SEE TEST-CASE
19:16:57
##forth
<mforth>
: TEST-CASE CASE 1 OF ." UN " CR ENDOF 2 OF ." DEUX " CR ENDOF 3 OF ." TROIS " CR ENDOF ." Others " CR ENDCASE ;
22:00:59
##forth
<crc>
!konilo shutdown
22:00:59
##forth
<konilo-bot>
Shutting down...
23:12:40
##forth
<veltas>
I promised myself I wouldn't stick my neck out, and get involved in this toxic never-ending debate, but...
23:13:08
##forth
<veltas>
If it affects debugger state, hints, etc, then it's not a NOP