unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Alex Vong <alexvong1995@gmail.com>
To: Kei Kebreau <kei@openmailbox.org>
Cc: guix-devel@gnu.org, help-octave@gnu.org,
	Mike Miller <mtmiller@octave.org>
Subject: Re: octave license is incompatible with openssl
Date: Sat, 13 Aug 2016 20:37:29 +0800	[thread overview]
Message-ID: <87inv4vo8m.fsf@gmail.com> (raw)
In-Reply-To: <87wpjnme3a.fsf@openmailbox.org> (Kei Kebreau's message of "Thu, 11 Aug 2016 13:04:41 -0400")

Kei Kebreau <kei@openmailbox.org> writes:

> Alex Vong <alexvong1995@gmail.com> writes:
>
>> Mike Miller <mtmiller@octave.org> writes:
>>
>>> On Wed, Aug 10, 2016 at 14:43:57 +0800, Alex Vong wrote:
>>>> I thought it was an optional dependency because when I run
>>>> `./configure --help', it contains the following help:
>>>> 
>>>>   --with-openssl          use libcrypto hash routines. Valid ARGs are: 'yes',
>>>>                           'no', 'auto' => use if available, 'optional' => use
>>>>                           if available and warn if not available; default is
>>>>                           'no'
>>>> 
>>>> 
>>>> Perhaps someone unaware of the issue adds this? Should I open a bug
>>>> report on this?
>>>
>>> Thanks for pointing that out. I wasn't aware of this until now. This
>>> configure option actually comes directly from the gnulib project. You'll
>>> notice that the default is "no", which is exactly as it should be.
>>>
>>> Octave provides some standard hash functions that are built on GPL
>>> compatible functions provided by gnulib. As a side effect of enabling
>>> these gnulib modules, gnulib automatically adds the `--with-openssl`
>>> option to allow the user to specify that the OpenSSL libcrypto functions
>>> should be used instead.
>>>
>>> I couldn't find this described or documented anywhere, just had to go
>>> digging through the configuration macros, e.g.
>>>
>>> http://git.savannah.gnu.org/cgit/gnulib.git/tree/m4/gl-openssl.m4
>>> http://git.savannah.gnu.org/cgit/gnulib.git/tree/m4/sha1.m4
>>>
>>> Cheers,
>>
>> I see. Thanks for the explaination. As Mark has pointed out, the problem
>> seems to be in the curl package.
>>
>> Finally, some unrelated stuff, I hope octave would have a byte code
>> interpreter soon. I would suggest to write it in rpython, it seems to be
>> the easiest way to have jit these days.
>>
>> Cheers,
>> Alex
>
> IIRC, Octave has experimental JIT support using LLVM.

Yes, I am aware that octave has an experimental llvm jit, but I heard
that llvm is a quick moving target and the api is not as stable as you
would like. Much energy needed to be devoted to simply keep in sync with
upstream.

Also, writing in restricted python seems more pleasant than c++. The jit
is auto-generated in the sense that you only need to mark when the loop
starts and when the loop stops. Finally, there is even a paper
(understandable to hobbyists) on implementing racket using
rpython[0]. These all looks promising to me.

The really downside is that the translation time is super long (time
takes to build the interpreter), because expensive static analysis needs
to be performed to remove malloc, assertions, inline function
calls... to make the interpreter itself fast enough (not the code it
generates I guess).

[0]: http://homes.soic.indiana.edu/samth/pycket-draft.pdf

  reply	other threads:[~2016-08-13 12:37 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-04 16:35 octave license is incompatible with openssl Alex Vong
2016-08-04 17:10 ` John Darrington
2016-08-04 17:20   ` ng0
2016-08-05  9:08     ` Alex Vong
2016-08-05  9:03   ` Alex Vong
2016-08-05 11:43     ` Mathieu Lirzin
2016-08-05  6:50 ` Ricardo Wurmus
2016-08-06  1:52   ` Alex Vong
2016-08-08 20:00     ` Leo Famulari
2016-08-09 16:00       ` Alex Vong
2016-08-09 17:27         ` Mike Miller
2016-08-09 18:30           ` Ricardo Wurmus
2016-08-09 21:33             ` kei
2016-08-10  4:28               ` Mark H Weaver
2016-08-11  5:56                 ` Mike Miller
2016-08-11  9:58                   ` Mark H Weaver
2016-08-10  4:23           ` Mark H Weaver
2016-08-10  6:43           ` Alex Vong
2016-08-11  6:26             ` Mike Miller
2016-08-11 15:27               ` Alex Vong
2016-08-11 17:04                 ` Kei Kebreau
2016-08-13 12:37                   ` Alex Vong [this message]
2016-08-12 11:45                 ` JIT compiling Jordi Gutiérrez Hermoso
2016-08-12 15:08                   ` Sergei Steshenko
2016-08-12 16:06                     ` Oliver Heimlich
2016-08-13  1:03                       ` Sergei Steshenko
2016-08-13 11:48                         ` Alex Vong
2016-08-13 12:12                   ` Alex Vong
2016-08-14  8:07                     ` Sergei Steshenko
2016-08-14 10:21                       ` Francesco Potortì
2016-08-14 20:20                       ` Jordi Gutiérrez Hermoso

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87inv4vo8m.fsf@gmail.com \
    --to=alexvong1995@gmail.com \
    --cc=guix-devel@gnu.org \
    --cc=help-octave@gnu.org \
    --cc=kei@openmailbox.org \
    --cc=mtmiller@octave.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).