some adverbs take noun arguments:

   2 (1 : '+: m') 
4 

@: is a conjunction u@:v.  So (u@:) is an adverb that will have v on the left 
side.  In the case of u@:, v cannot be a noun, but ] will usually work straight 
forwardly if you already have a noun.


----- Original Message -----
From: Linda Alvord <[email protected]>
To: [email protected]
Cc: 
Sent: Saturday, July 5, 2014 10:38:09 AM
Subject: Re: [Jprogramming] RIPEMD-160 hashes

Thanks.  I will be useful to know how to get the result of applying an adverb 
to a noun.

Linda

-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of 'Pascal Jasmin' 
via Programming
Sent: Saturday, July 05, 2014 10:21 AM
To: [email protected]
Subject: Re: [Jprogramming] RIPEMD-160 hashes

hexhash is an adverb. hfd is in default profile for J7+ afaik.

    ] hexhash 'good morning' 
676f6f64206d6f726e696e67 


There may not be an obvious reason to make it an adverb, but the reason I did 
is that you can chain adverbs, and so use the same rank/modifiers as the verb 
without repeating them

    ] hexhash each 'good morning';'asdf' 
┌────────────────────────┬────────┐ 
│676f6f64206d6f726e696e67│61736466│ 
└────────────────────────┴────────┘ 

( [: ,@:hfd a.i.]) each ] each 'good morning';'asdf'



----- Original Message -----
From: Linda Alvord <[email protected]>
To: [email protected]
Cc: 
Sent: Saturday, July 5, 2014 7:06:26 AM
Subject: Re: [Jprogramming] RIPEMD-160 hashes

Doesn't this need:  hfd

   hexhash =: ( [: ,@:hfd a.i.])@:
   hexhash 'good morning'
|syntax error
|       hexhash'good morning'

Linda

-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of 'Pascal
Jasmin' via Programming
Sent: Thursday, June 26, 2014 8:26 PM
To: [email protected]
Subject: Re: [Jprogramming] RIPEMD-160 hashes

the definition works in win64 with J802's bundled dll.

maybe on win32 changing the first parameter from i to l would work

also you want this adverb to get hex result

hexhash =: ( [: ,@:hfd a.i.])@:

   sr160 hexhash 'go ahead hash my day - i am expecting a 20 byte hash' 
d02e91b3971c04b689174e3f9f216b4f5972f62f


----- Original Message -----
From: John Baker <[email protected]>
To: Programming forum <[email protected]>
Cc: 
Sent: Thursday, June 26, 2014 4:57:37 PM
Subject: Re: [Jprogramming] RIPEMD-160 hashes

I got around to trying this with less than satisfactory results. The
libeay32.dll exists in the j802 bin folder (it was hidden) and the result
of the bind script follows:

   sslRIPEMPD160
'c:\uap\j802\bin\libeay32.dll RIPEMD160 i *c l *c'&cd

   sr160
3 : 0
output=: (20) # ' '
sslRIPEMD160 (y);(# y);output
output
)

   sr160 'go ahead hash my day - i am expecting a 20 byte hash'
|domain error: cd
|       sslRIPEMD160(y);(#y);output


This test was on a 32 bit win 7 machine. Am I calling this correctly? I
don't see the problemo?

jdb



On Wed, Jun 25, 2014 at 12:30 PM, 'Pascal Jasmin' via Programming <
[email protected]> wrote:

> You can change the sslp =: line in j802 to point to bin.  Otherwise this
> needs openssl (I think always available on linux and mac)  RIPEMD160 is
> called through sr160 function.
>
> Library is faster than windows built in dlls
>
> require 'dll'
> NB. require 'shards'
> sslp =: IFWIN pick '/usr/lib/';'D:\OpenSSL-Win64\bin\'
> NB. OPENSSL =: jpath '~system/ssleay32.dll '
> NB.OPENSSL =: sslp , '\ssleay32.dll '
> OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i. <UNAME_z_)
> pick 'libeay32.dll '; (2 $ <'libssl.so ');  (2 $ <'libssl.dylib ')
> NB.OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i.
> <UNAME_z_) pick 'libeay32.dll '; (2 $ <'libssl.so ');  (2 $
> <'libssl.0.9.8.dylib ')
> SSLE =: sslp , '\openssl'
> ssl =: 1 : '(OPENSSL , m)&cd'
> RSAbits =: 64
> RSApE =: 3 ] 65537
> sslsha256 =: ' SHA256 i *c l *c' ssl
> sslsha512 =: ' SHA512 i *c l *c' ssl
> sslsha1 =: ' SHA1 i *c l *c' ssl
> sslRIPEMD160 =: ' RIPEMD160 i *c l *c' ssl
> sr160=: 3 : 0
> output=: (20) # ' '
> sslRIPEMD160 (y);(# y);output
> output
> )
> sha1 =: 3 : 0
> output=: (20) # ' '
> sslsha1 (y);(# y);output
> output
> )
> s512 =: 3 : 0
> output=: (64) # ' '
> sslsha512 (y);(# y);output
> output
> )
> s256 =: 3 : 0
> output=: (32) # ' '
> sslsha256 (y);(# y);output
> output
> )
>
>
>
> ----- Original Message -----
> From: John Baker <[email protected]>
> To: Programming forum <[email protected]>
> Cc:
> Sent: Wednesday, June 25, 2014 11:54:25 AM
> Subject: [Jprogramming] RIPEMD-160 hashes
>
> I am wondering if anyone has invoked RIPEMD-160 hash algorithms from J.
>
> There is public C source for this hash
>
>
>
http://cpansearch.perl.org/src/CHGEUER/RIPEMD160-0.02/rmd160/doc/ripemd160.h
tml
>
> and looking through it is enough to convince me that this is best left in
> C.  It seems most of the implementations are tailored for 32 bit machines
> and I need to run this from a 64 bit machine. Any suggestions will be
> welcome.
>
>
> --
> John D. Baker
> [email protected]
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm









>



-- 
John D. Baker
[email protected]
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to