RE: How to contribute SystemML

2015-12-02 Thread Tatsuya Nishiyama
Hi Niketan,

Thank you for telling me many things. I understand the plan of SystemML to
support REPL.

> Like Matthias, I would recommend that implementing an interpreter for DML
might not be a good task to explore SystemML.
I will start contributing SystemML from small tasks. 

> We do have a "mini-interpreter" in the form of a debugger and it might be
a good place to explore before implementing an interpreter.
This is so great. I will try to use it and read the source code.  Thank you
again for your giving me the overview and some references. 

Thanks, 
- Tatsuya

--
From: Niketan Pansare [mailto:npan...@us.ibm.com] 
Sent: Thursday, December 03, 2015 2:30 AM
To: dev@systemml.incubator.apache.org
Subject: RE: How to contribute SystemML

Hi Tatsuya,

Thanks for your interest in the SystemML project. Just so that we are on
same page, there are two interpretation of REPL with respect to SystemML:
1. Using SystemML in Spark REPL.
- Scala Spark-shell:
http://apache.github.io/incubator-systemml/mlcontext-programming-guide.html.
This also involves the integration with MLPipeline
(https://github.com/apache/incubator-systemml/blob/master/src/main/java/com/
ibm/bi/dml/api/ml/LogisticRegression.java) APIs.
- PySpark shell (using SystemML.py)
- Jupyter (using SystemML.py)

2. Having a "DML kernel/interpreter".
- A DML kernel for Jupyter (will require a command-line interpreter)
- A command-line interpreter where data scientists can type DML commands. 

Like Matthias, I would recommend that implementing an interpreter for DML
might not be a good task to explore SystemML. Still, I will try to give you
an overview and please pardon me for hand-waving a bit in below paragraph
for sake of simplicity.

We do have a "mini-interpreter" in the form of a debugger and it might be a
good place to explore before implementing an interpreter. Please note: the
debugger works at level of instruction, not at the level of DML statement.
Also, the debugger takes as input a DML script and hence SystemML's
optimizer has full scope for optimization. However, to allow for tasks such
as "step into", we disable certain optimizations and have a special level
for the debugger (O5_DEBUG_MODE). For example: algrebraic simplification,
interprocedural analysis, branch removal, dynamic recompilations, sum
product rewrites, etc are disabled. Browsing through the debugger code
should give you a fair idea about the machinery required in SystemML for
implementing a full-fledged interpreter (such as runtime instructions,
symbol table, instructions-to-DML mapping, piggybacking, etc). Then one must
step back and look at the high-level design decisions as well, such as lazy
evaluation.

To get started with the debugger, please look at
http://apache.github.io/incubator-systemml/debugger-guide.html and also in
the com.ibm.bi.dml.debug package.

Please note the URL might change soon when we change our package names to
org.apache.sysml.

Reference:
https://github.com/apache/incubator-systemml/blob/master/src/main/java/com/i
bm/bi/dml/api/MLContext.java
https://github.com/apache/incubator-systemml/blob/master/src/main/java/com/i
bm/bi/dml/api/python/SystemML.py
https://github.com/ipython/ipython/wiki/IPython-kernels-for-other-languages
https://github.com/apache/incubator-systemml/tree/master/src/main/java/com/i
bm/bi/dml/debug

Thanks,

Niketan Pansare
IBM Almaden Research Center
E-mail: npansar At us.ibm.com
http://researcher.watson.ibm.com/researcher/view.php?person=us-npansar

"Tatsuya Nishiyama" ---12/02/2015 01:06:33 AM---Hi Matthias, Thanks for your
reply.

From: "Tatsuya Nishiyama" 
To: 
Date: 12/02/2015 01:06 AM
Subject: RE: How to contribute SystemML




Hi Matthias,

Thanks for your reply.

> Such a feature would, however, require substantial discussions, especially
with regard to optimization scope etc and hence might not be a good starting
task.
> How about we select some smaller tasks on our existing APIs and once you
feel comfortable get started on a larger feature like that?
OK, I understand it. I will try to find such smaller tasks, and tackle it.
If you already know any started tasks , please tell me.

Best regards,
- Tatsuya

-- 

From: Matthias Boehm [mailto:mbo...@us.ibm.com] 
Sent: Wednesday, December 02, 2015 4:47 PM
To: dev@systemml.incubator.apache.org
Subject: Re: How to contribute SystemML

Hi Tatsuya,

thanks for your interest, we'd love to help you get started. 

Although we do have various APIs, including MLContext that allows you to
invoke DML scripts from Spark's interactive shell, we don't have an actual
REPL interface yet. Niketan built an initial prototype of a related API.
@Niketan: Do you want to comment on that? 

Such a feature would, however, require substantial discussions, especially
with regard to optimization scope etc and hence might not be a good starting
task. How about we select some smaller tasks on our existing APIs and once
you feel comfortable get started on a larger featu

Re: December 2015 Report

2015-12-02 Thread Luciano Resende
On Wed, Dec 2, 2015 at 3:12 PM, Deron Eriksson 
wrote:

> Hi Luciano,
>
> Here are a few ideas... Perhaps others can add to or modify this? Luciano,
> could you generate numbers for the user count on the dev list and the
> message count on the dev list since we became an Apache Incubator project?
>
> * A list of the three most important issues to address in the move towards
> graduation.
> 1. Grow SystemML community: active mailing list, promote developer
> involvement in codebase, increase adoption of SystemML for scalable machine
> learning, encourage data scientists to use DML and PyDML algorithm scripts,
> respond to user feedback to ensure SystemML meets the requirements of
> real-world situations, write papers, and present SystemML at conferences.
> 2. Core library improvements, including Apache Spark integration.
> 3. Improved SystemML documentation to lower the learning curve.
>
>
> * Any issues that the Incubator PMC or ASF Board might wish/need to be
> aware of?
> We expect that the SystemML Apache JIRA site will be available shortly, as
> detailed in INFRA-10714.
>
>
> * How has the community developed since the last report?
> Subscriptions: dev@ - ?(Luciano, can you report the number of users on the
> dev@systemml.incubator.apache.org mailing list?)
> Message count: dev@ - ?(Luciano, can you report the number of messages on
> the dev@systemml.incubator.apache.org mailing list?)
>
> Could someone please mention any conference presentations or papers?
>
>
> * How has the project developed since the last report?
> Since becoming an Apache Incubator project on 2015-11-02, there have been
> 51 commits to the project (determined via git log --pretty=oneline
> --since=2015-11-02 | wc -l)
>
>
> Deron
>
>
>

Thanks Deron, I have updated the report to the Incubator wiki page

https://wiki.apache.org/incubator/December2015




-- 
Luciano Resende
http://people.apache.org/~lresende
http://twitter.com/lresende1975
http://lresende.blogspot.com/


Re: Re-enabling PR builds for Apache SystemML project

2015-12-02 Thread Luciano Resende
On Wed, Dec 2, 2015 at 4:59 PM, Alan K Chin  wrote:

>
>
> Hi All,
>
> Now that system-ml is an apache project, we will need to update the Jenkins
> pull request builder with the new repo location before it can be
> re-enabled.
>
>
+1, waiting for the automatic pr builds...


> 1. Would like to have some sort of bot or functional ID to perform
> automated tasks vs using a developer account. e.g. update generated docs,
> post build and testing updates etc.
>a. Will need an email address to register with Github
>

What communications will be sent to this address ? Based on that, we could
use a gmail account or just forward things to the mailing list ?


>b. a username, sysml-bot seems as good as any, but taking suggestions
>

looks ok with me


> 2. Will need a new API token from apache with admin permissions to that
> specific repository as well as push and pull rights in order to utilize the
> hooks provided by Github. This will need to be created by apache repo/infra
> admins using the sysml-bot bot account or the some other user account.
>
>
This part you will probably need to create a INFRA JIRA, as they are the
owners of the organization.


> --
> Alan Chin
> Spark Technology Center, San Francisco
> Email - akc...@us.ibm.com
>



-- 
Luciano Resende
http://people.apache.org/~lresende
http://twitter.com/lresende1975
http://lresende.blogspot.com/


Re-enabling PR builds for Apache SystemML project

2015-12-02 Thread Alan K Chin


Hi All,

Now that system-ml is an apache project, we will need to update the Jenkins
pull request builder with the new repo location before it can be
re-enabled.

1. Would like to have some sort of bot or functional ID to perform
automated tasks vs using a developer account. e.g. update generated docs,
post build and testing updates etc.
   a. Will need an email address to register with Github
   b. a username, sysml-bot seems as good as any, but taking suggestions
2. Will need a new API token from apache with admin permissions to that
specific repository as well as push and pull rights in order to utilize the
hooks provided by Github. This will need to be created by apache repo/infra
admins using the sysml-bot bot account or the some other user account.

--
Alan Chin
Spark Technology Center, San Francisco
Email - akc...@us.ibm.com


Re: Maven profiles for distributions

2015-12-02 Thread Mike Dusenberry
Yeah I thinking lumping them all together would be fine too. As long as the 
regular dev builds are sped up, I'm fine either way. 




-Mike




--


Mike Dusenberry


GitHub: github.com/dusenberrymw



LinkedIn: linkedin.com/in/mikedusenberry


Sent from my iPhone

On Wed, Dec 2, 2015 at 3:52 PM, Luciano Resende 
wrote:

> I was reviewing #PR6, and I was wondering why we need to have a different
> maven profile for distribution ?
> Source distribution
> mvn clean package -P SourceDist
> Cluster distribution
> mvn clean package -P ClusterDist
> Standalone distribution
> mvn clean package -P StandaloneDist
> In-memory distribution
> mvn clean package -P InmemoryDist
> I would say the scenario is either, you are just compiling and want to
> produce the jar, or you are creating a distribution and want to have the
> multiple distros created.
> So, how about we only have a "distribution" profile ?
> mvn clean package -P distribution
> Thoughts ?
> [1] https://github.com/apache/incubator-systemml/pull/6
> -- 
> Luciano Resende
> http://people.apache.org/~lresende
> http://twitter.com/lresende1975
> http://lresende.blogspot.com/

Maven profiles for distributions

2015-12-02 Thread Luciano Resende
I was reviewing #PR6, and I was wondering why we need to have a different
maven profile for distribution ?

Source distribution
mvn clean package -P SourceDist
Cluster distribution
mvn clean package -P ClusterDist
Standalone distribution
mvn clean package -P StandaloneDist
In-memory distribution
mvn clean package -P InmemoryDist

I would say the scenario is either, you are just compiling and want to
produce the jar, or you are creating a distribution and want to have the
multiple distros created.

So, how about we only have a "distribution" profile ?

mvn clean package -P distribution


Thoughts ?

[1] https://github.com/apache/incubator-systemml/pull/6

-- 
Luciano Resende
http://people.apache.org/~lresende
http://twitter.com/lresende1975
http://lresende.blogspot.com/


Re: SystemML Committer Git Guide

2015-12-02 Thread Deron Eriksson
Thank you for creating this, Mike. It's great to get us all using the same
standard approach with regards to Git and SystemML. Great job!

Deron


On Wed, Dec 2, 2015 at 12:38 PM, Mike Dusenberry 
wrote:

> Hi all,
>
>
> Here is a quick committer guide to using Git with SystemML, located in the
> GitHub Gist at the following link, and reproduced below.
>
>
>   • https://gist.github.com/dusenberrymw/78eb31b101c1b1b236e5
> ---
>
>
> # SystemML Git Guide
>
>
> ## Setup Git repo locally
> * Fork Apache SystemML to your personal GitHub account by browsing to [
> https://github.com/apache/incubator-systemml] and clicking "Fork".
> * Clone your personal GitHub fork of Apache SystemML:
>   * `git clone g...@github.com:USERNAME/incubator-systemml.git` //
> assuming the use of SSH keys with GitHub
> * Add GitHub (read-only mirror) and Apache-owned (committer writeable) Git
> repositories as remotes:
>   * `cd incubator-systemml`
>   * `git remote add apache-github
> https://github.com/apache/incubator-systemml.git`
>   * `git remote add apache
> https://git-wip-us.apache.org/repos/asf/incubator-systemml.git`
> * Add a Git alias for checking out GitHub pull requests locally:
>   * Install alias globally by placing the following in `~/.gitconfig`
> ```
> [alias]
> pr = "!f() { git fetch ${2:-apache-github} pull/$1/head:pr-$1 && git
> checkout pr-$1; }; f"
> ```
>   * Look at pull request on GitHub to determine the pull request number,
> indicated as "#4", for example.
>   * Checkout out locally:
> * `git pr 4`
>
>
> ## PR flow
> * Create local branch for feature(s):
>   * `git checkout -b SYSML--My_Awesome_Feature`
> * Make commits on `SYSML--My_Awesome_Feature` branch.
> * Push the `SYSML--My_Awesome_Feature` branch to your personal GitHub
> fork of SystemML:
>   * `git checkout SYSML--My_Awesome_Feature`
>   * First push of this branch:
> * `git push --set-upstream origin SYSML--My_Awesome_Feature`
>   * Future pushes of this branch:
> * `git push`
> * Open a new pull request by browsing to the
> `SYSML--My_Awesome_Feature` branch on your personal GitHub fork of
> SystemML and clicking "New pull request".
>
>
> ## Merging (manually) without merge commits
> * Update your local `SYSML--My_Awesome_Feature` branch with the latest
> commits in the Apache repo by *rebasing*:
>   * `git checkout SYSML--My_Awesome_Feature`
>   * `git pull --rebase apache master`
> * Update your local `master` branch with the latest commits in the Apache
> repo:
>   * `git checkout mater`
>   * `git pull apache master`
> * Move the commits from your local `SYSML--My_Awesome_Feature` branch
> to the local `master` branch.  Note: This will **not create merge commits**
> since both branches are fully updated from the Apache repo.
>   * `git checkout master`
>   * `git merge SYSML--My_Awesome_Feature`
> * Note: This should result in a "fast-forward" merge.
> * Push to the Apache repo:
>   * `git push apache master`
>
>
> ## Merging (script)
> * WIP
>
>
> ## Tricks
> * If you add the phrase "Closes #4." to the end of a commit message and
> then push to Apache, GitHub will automatically close pull request 4, and
> the commit will contain a link to that pull request.
>
>
> ---
>
>
> Cheers!
>
>
> - Mike
>
>
>
> --
>
> Mike Dusenberry
> GitHub: github.com/dusenberrymw
> LinkedIn: linkedin.com/in/mikedusenberry


Re: SystemML Committer Git Guide

2015-12-02 Thread Luciano Resende
We could basically update the one available at

https://github.com/SparkTC/development-guidelines/blob/master/contributing-to-projects.md

And you can just start a getting this to the Website, under Community or
some other menu item...

We will need one for general code contribution, one for website, etc


On Wed, Dec 2, 2015 at 12:38 PM, Mike Dusenberry 
wrote:

> Hi all,
>
>
> Here is a quick committer guide to using Git with SystemML, located in the
> GitHub Gist at the following link, and reproduced below.
>
>
>   • https://gist.github.com/dusenberrymw/78eb31b101c1b1b236e5
> ---
>
>
> # SystemML Git Guide
>
>
> ## Setup Git repo locally
> * Fork Apache SystemML to your personal GitHub account by browsing to [
> https://github.com/apache/incubator-systemml] and clicking "Fork".
> * Clone your personal GitHub fork of Apache SystemML:
>   * `git clone g...@github.com:USERNAME/incubator-systemml.git` //
> assuming the use of SSH keys with GitHub
> * Add GitHub (read-only mirror) and Apache-owned (committer writeable) Git
> repositories as remotes:
>   * `cd incubator-systemml`
>   * `git remote add apache-github
> https://github.com/apache/incubator-systemml.git`
>   * `git remote add apache
> https://git-wip-us.apache.org/repos/asf/incubator-systemml.git`
> * Add a Git alias for checking out GitHub pull requests locally:
>   * Install alias globally by placing the following in `~/.gitconfig`
> ```
> [alias]
> pr = "!f() { git fetch ${2:-apache-github} pull/$1/head:pr-$1 && git
> checkout pr-$1; }; f"
> ```
>   * Look at pull request on GitHub to determine the pull request number,
> indicated as "#4", for example.
>   * Checkout out locally:
> * `git pr 4`
>
>
> ## PR flow
> * Create local branch for feature(s):
>   * `git checkout -b SYSML--My_Awesome_Feature`
> * Make commits on `SYSML--My_Awesome_Feature` branch.
> * Push the `SYSML--My_Awesome_Feature` branch to your personal GitHub
> fork of SystemML:
>   * `git checkout SYSML--My_Awesome_Feature`
>   * First push of this branch:
> * `git push --set-upstream origin SYSML--My_Awesome_Feature`
>   * Future pushes of this branch:
> * `git push`
> * Open a new pull request by browsing to the
> `SYSML--My_Awesome_Feature` branch on your personal GitHub fork of
> SystemML and clicking "New pull request".
>
>
> ## Merging (manually) without merge commits
> * Update your local `SYSML--My_Awesome_Feature` branch with the latest
> commits in the Apache repo by *rebasing*:
>   * `git checkout SYSML--My_Awesome_Feature`
>   * `git pull --rebase apache master`
> * Update your local `master` branch with the latest commits in the Apache
> repo:
>   * `git checkout mater`
>   * `git pull apache master`
> * Move the commits from your local `SYSML--My_Awesome_Feature` branch
> to the local `master` branch.  Note: This will **not create merge commits**
> since both branches are fully updated from the Apache repo.
>   * `git checkout master`
>   * `git merge SYSML--My_Awesome_Feature`
> * Note: This should result in a "fast-forward" merge.
> * Push to the Apache repo:
>   * `git push apache master`
>
>
> ## Merging (script)
> * WIP
>
>
> ## Tricks
> * If you add the phrase "Closes #4." to the end of a commit message and
> then push to Apache, GitHub will automatically close pull request 4, and
> the commit will contain a link to that pull request.
>
>
> ---
>
>
> Cheers!
>
>
> - Mike
>
>
>
> --
>
> Mike Dusenberry
> GitHub: github.com/dusenberrymw
> LinkedIn: linkedin.com/in/mikedusenberry




-- 
Luciano Resende
http://people.apache.org/~lresende
http://twitter.com/lresende1975
http://lresende.blogspot.com/


Re: December 2015 Report

2015-12-02 Thread Deron Eriksson
Hi Luciano,

Here are a few ideas... Perhaps others can add to or modify this? Luciano,
could you generate numbers for the user count on the dev list and the
message count on the dev list since we became an Apache Incubator project?

* A list of the three most important issues to address in the move towards
graduation.
1. Grow SystemML community: active mailing list, promote developer
involvement in codebase, increase adoption of SystemML for scalable machine
learning, encourage data scientists to use DML and PyDML algorithm scripts,
respond to user feedback to ensure SystemML meets the requirements of
real-world situations, write papers, and present SystemML at conferences.
2. Core library improvements, including Apache Spark integration.
3. Improved SystemML documentation to lower the learning curve.


* Any issues that the Incubator PMC or ASF Board might wish/need to be
aware of?
We expect that the SystemML Apache JIRA site will be available shortly, as
detailed in INFRA-10714.


* How has the community developed since the last report?
Subscriptions: dev@ - ?(Luciano, can you report the number of users on the
dev@systemml.incubator.apache.org mailing list?)
Message count: dev@ - ?(Luciano, can you report the number of messages on
the dev@systemml.incubator.apache.org mailing list?)

Could someone please mention any conference presentations or papers?


* How has the project developed since the last report?
Since becoming an Apache Incubator project on 2015-11-02, there have been
51 commits to the project (determined via git log --pretty=oneline
--since=2015-11-02 | wc -l)


Deron



On Tue, Dec 1, 2015 at 5:12 PM, Luciano Resende 
wrote:

> On Mon, Nov 30, 2015 at 8:53 AM, Luciano Resende 
> wrote:
>
> > Any volunteers for this month report ?
> >
> > Please take at the links below for report examples:
> > http://wiki.apache.org/incubator/November2015
> > http://wiki.apache.org/incubator/December2015
> >
> >
> > Once we review it here, I can update the wiki page.
> >
>
>
> Anyone volunteering to handle this ?
>
>
> --
> Luciano Resende
> http://people.apache.org/~lresende
> http://twitter.com/lresende1975
> http://lresende.blogspot.com/
>


SystemML Committer Git Guide

2015-12-02 Thread Mike Dusenberry
Hi all,


Here is a quick committer guide to using Git with SystemML, located in the 
GitHub Gist at the following link, and reproduced below.


  • https://gist.github.com/dusenberrymw/78eb31b101c1b1b236e5
---


# SystemML Git Guide


## Setup Git repo locally
* Fork Apache SystemML to your personal GitHub account by browsing to 
[https://github.com/apache/incubator-systemml] and clicking "Fork".
* Clone your personal GitHub fork of Apache SystemML:
  * `git clone g...@github.com:USERNAME/incubator-systemml.git` // assuming the 
use of SSH keys with GitHub
* Add GitHub (read-only mirror) and Apache-owned (committer writeable) Git 
repositories as remotes:
  * `cd incubator-systemml`
  * `git remote add apache-github 
https://github.com/apache/incubator-systemml.git`
  * `git remote add apache 
https://git-wip-us.apache.org/repos/asf/incubator-systemml.git`
* Add a Git alias for checking out GitHub pull requests locally:
  * Install alias globally by placing the following in `~/.gitconfig`
    ```
    [alias]
    pr = "!f() { git fetch ${2:-apache-github} pull/$1/head:pr-$1 && git 
checkout pr-$1; }; f"
    ```
  * Look at pull request on GitHub to determine the pull request number, 
indicated as "#4", for example.
  * Checkout out locally:
    * `git pr 4`


## PR flow
* Create local branch for feature(s):
  * `git checkout -b SYSML--My_Awesome_Feature`
* Make commits on `SYSML--My_Awesome_Feature` branch.
* Push the `SYSML--My_Awesome_Feature` branch to your personal GitHub fork 
of SystemML:
  * `git checkout SYSML--My_Awesome_Feature`
  * First push of this branch:
    * `git push --set-upstream origin SYSML--My_Awesome_Feature`
  * Future pushes of this branch:
    * `git push`
* Open a new pull request by browsing to the `SYSML--My_Awesome_Feature` 
branch on your personal GitHub fork of SystemML and clicking "New pull request".


## Merging (manually) without merge commits
* Update your local `SYSML--My_Awesome_Feature` branch with the latest 
commits in the Apache repo by *rebasing*:
  * `git checkout SYSML--My_Awesome_Feature`
  * `git pull --rebase apache master`
* Update your local `master` branch with the latest commits in the Apache repo:
  * `git checkout mater`
  * `git pull apache master`
* Move the commits from your local `SYSML--My_Awesome_Feature` branch to 
the local `master` branch.  Note: This will **not create merge commits** since 
both branches are fully updated from the Apache repo.
  * `git checkout master`
  * `git merge SYSML--My_Awesome_Feature`
    * Note: This should result in a "fast-forward" merge.
* Push to the Apache repo:
  * `git push apache master`


## Merging (script)
* WIP


## Tricks
* If you add the phrase "Closes #4." to the end of a commit message and then 
push to Apache, GitHub will automatically close pull request 4, and the commit 
will contain a link to that pull request.


---


Cheers!


- Mike



--

Mike Dusenberry
GitHub: github.com/dusenberrymw
LinkedIn: linkedin.com/in/mikedusenberry

RE: How to contribute SystemML

2015-12-02 Thread Niketan Pansare

Hi Tatsuya,

Thanks for your interest in the SystemML project. Just so that we are on
same page, there are two interpretation of REPL with respect to SystemML:
1. Using SystemML in Spark REPL.
- Scala Spark-shell:
http://apache.github.io/incubator-systemml/mlcontext-programming-guide.html
. This also involves the integration with MLPipeline (
https://github.com/apache/incubator-systemml/blob/master/src/main/java/com/ibm/bi/dml/api/ml/LogisticRegression.java
) APIs.
- PySpark shell (using SystemML.py)
- Jupyter (using SystemML.py)

2. Having a "DML kernel/interpreter".
- A DML kernel for Jupyter (will require a command-line interpreter)
- A command-line interpreter where data scientists can type DML commands.

Like Matthias, I would recommend that implementing an interpreter for DML
might not be a good task to explore SystemML. Still, I will try to give you
an overview and please pardon me for hand-waving a bit in below paragraph
for sake of simplicity.

We do have a "mini-interpreter" in the form of a debugger and it might be a
good place to explore before implementing an interpreter. Please note: the
debugger works at level of instruction, not at the level of DML statement.
Also, the debugger takes as input a DML script and hence SystemML's
optimizer has full scope for optimization. However, to allow for tasks such
as "step into", we disable certain optimizations and have a special level
for the debugger (O5_DEBUG_MODE). For example: algrebraic simplification,
interprocedural analysis, branch removal, dynamic recompilations, sum
product rewrites, etc are disabled. Browsing through the debugger code
should give you a fair idea about the machinery required in SystemML for
implementing a full-fledged interpreter (such as runtime instructions,
symbol table, instructions-to-DML mapping, piggybacking, etc). Then one
must step back and look at the high-level design decisions as well, such as
lazy evaluation.

To get started with the debugger, please look at
http://apache.github.io/incubator-systemml/debugger-guide.html and also in
the com.ibm.bi.dml.debug package.

Please note the URL might change soon when we change our package names to
org.apache.sysml.

Reference:
https://github.com/apache/incubator-systemml/blob/master/src/main/java/com/ibm/bi/dml/api/MLContext.java
https://github.com/apache/incubator-systemml/blob/master/src/main/java/com/ibm/bi/dml/api/python/SystemML.py
https://github.com/ipython/ipython/wiki/IPython-kernels-for-other-languages
https://github.com/apache/incubator-systemml/tree/master/src/main/java/com/ibm/bi/dml/debug

Thanks,

Niketan Pansare
IBM Almaden Research Center
E-mail: npansar At us.ibm.com
http://researcher.watson.ibm.com/researcher/view.php?person=us-npansar



From:   "Tatsuya Nishiyama" 
To: 
Date:   12/02/2015 01:06 AM
Subject:RE: How to contribute SystemML



Hi Matthias,

Thanks for your reply.

> Such a feature would, however, require substantial discussions,
especially
with regard to optimization scope etc and hence might not be a good
starting
task.
> How about we select some smaller tasks on our existing APIs and once you
feel comfortable get started on a larger feature like that?
OK, I understand it. I will try to find such smaller tasks, and tackle it.
If you already know any started tasks , please tell me.

Best regards,
- Tatsuya

--

From: Matthias Boehm [mailto:mbo...@us.ibm.com]
Sent: Wednesday, December 02, 2015 4:47 PM
To: dev@systemml.incubator.apache.org
Subject: Re: How to contribute SystemML

Hi Tatsuya,

thanks for your interest, we'd love to help you get started.

Although we do have various APIs, including MLContext that allows you to
invoke DML scripts from Spark's interactive shell, we don't have an actual
REPL interface yet. Niketan built an initial prototype of a related API.
@Niketan: Do you want to comment on that?

Such a feature would, however, require substantial discussions, especially
with regard to optimization scope etc and hence might not be a good
starting
task. How about we select some smaller tasks on our existing APIs and once
you feel comfortable get started on a larger feature like that?


Regards,
Matthias

"Tatsuya Nishiyama" ---12/01/2015 10:50:41 PM---Hi, I'm interested in
contributing SystemML. I've checked the documentation, and

From: "Tatsuya Nishiyama" 
To: 
Date: 12/01/2015 10:50 PM
Subject: How to contribute SystemML




Hi,

I'm interested in contributing SystemML. I've checked the documentation,
and
it looks like SystemML doesn't have REPL for interactive execution. Is it
correct? If SystemML doesn't have REPL, I would like to contribute it. BTW,
JIRA looks to be unavailable for now:
https://issues.apache.org/jira/browse/SYSTEMML
How can I start contribution?

Thanks,
- Tatsuya






RE: How to contribute SystemML

2015-12-02 Thread Tatsuya Nishiyama
Hi Matthias,

Thanks for your reply.

> Such a feature would, however, require substantial discussions, especially
with regard to optimization scope etc and hence might not be a good starting
task.
> How about we select some smaller tasks on our existing APIs and once you
feel comfortable get started on a larger feature like that?
OK, I understand it. I will try to find such smaller tasks, and tackle it.
If you already know any started tasks , please tell me.

Best regards,
- Tatsuya

-- 

From: Matthias Boehm [mailto:mbo...@us.ibm.com] 
Sent: Wednesday, December 02, 2015 4:47 PM
To: dev@systemml.incubator.apache.org
Subject: Re: How to contribute SystemML

Hi Tatsuya,

thanks for your interest, we'd love to help you get started. 

Although we do have various APIs, including MLContext that allows you to
invoke DML scripts from Spark's interactive shell, we don't have an actual
REPL interface yet. Niketan built an initial prototype of a related API.
@Niketan: Do you want to comment on that? 

Such a feature would, however, require substantial discussions, especially
with regard to optimization scope etc and hence might not be a good starting
task. How about we select some smaller tasks on our existing APIs and once
you feel comfortable get started on a larger feature like that? 


Regards,
Matthias

"Tatsuya Nishiyama" ---12/01/2015 10:50:41 PM---Hi, I'm interested in
contributing SystemML. I've checked the documentation, and

From: "Tatsuya Nishiyama" 
To: 
Date: 12/01/2015 10:50 PM
Subject: How to contribute SystemML




Hi,

I'm interested in contributing SystemML. I've checked the documentation, and
it looks like SystemML doesn't have REPL for interactive execution. Is it
correct? If SystemML doesn't have REPL, I would like to contribute it. BTW,
JIRA looks to be unavailable for now:
https://issues.apache.org/jira/browse/SYSTEMML
How can I start contribution?

Thanks,
- Tatsuya