Closed EntilZha closed 8 years ago
Now that I had some time to reserve the name on PyPI today, would like to provide one possible rename option: PyFunctional
Pluses:
functional
wellCons
functional
, but thats already the case right nowOther ideas:
PyFun
, PyFunc
Pype
PipeFun
, PipeFunc
FPipe
PyFunctional sounds great, although the name ScalaFunctional
we have now implies it's pipelining nature
Deciding on PyFunctional
. Tomorrow I will be releasing 0.6.0
to put sqlite3 support on PyPI.
PyFunctional
with a note of old name0.6.0
on PyPI as PyFunctional
and ScalaFunctional
. This will be the last or second to last release under the name ScalaFunctional
(unlike issue description in first comment, changed mind on this)1.0
. This will probably be in 2-3 releases from now. Planned inclusions are compressed file support, general sql db reading support, completed LINQ parsing for simple statements, a parallel execution engine, and possibly packaging an _
equivalent.Name change is complete
I have long thought that the name
ScalaFunctional
is not that great, but so far haven't done anything about it. I think that this might be a good time to come up with a better name that suits what it does and direction of the project better. To be clear, the name change is for the distribution name (repository, website, PyPI), the import name will not change, because too many things would break.I would like to detail where the name came from, why its not that good, and what would be desired in a new name by explaining the overall goals for the project. I plan on posting some name ideas later this week after more thought, but would like to get ideas from others as well.
At the end of the issue, I will explain logistically what the plan is to TLDR not break anything.
ScalaFunctional Name
Origin
functional
functional
on PyPI had/has been dead for a long time, but cannot be reclaimed. Since it is dead, a name conflict with it fromimport functional
is unlikely, but not possible to claim the dead project's distribution nameWhy its not good
Overall Goals and Direction
Currently, the project is doing very well in supporting the first two. The streams/actions API is very complete, and more or less all common data formats/sources are supported (file compression coming in next release). The next possible targets would be SQL DBs with SQLAlchemy or similar to
to_pandas
, provide a way to make an SKLearn node (auto generate class that satisfies the node API).I am not quite happy with progress on the third goal, namely making
lambda
calls more succinct. This is my motivation to at some point natively support something like_
fromfn.py
. This is paired with the exploratory work I have been doing on a SQL Parser/Compiler. With the code/understanding I have right now, something like below is looking pretty easy:I am fairly confidant that as time goes on, the fourth goal will be better and better met.
The last goal has a few things wrapped in:
seq
forces an expansion of its input, I would like to provide a family ofseq
operations that behave slightly differently for particular use cases.seq
will stay default,sseq
(stream sequence) will not force expand its input,pseq
(parallel sequence) will provide a parallel execution engine.sseq
is fairly low hanging fruit of theseNew Name Goals
Name Name Requirements
Names Taken on PyPi
Plan
ScalaFunctional
as0.6.0
1.0
, whenever that might be. The import name will not change, only the distribution/repository name. Open to comment on this or any part of the planHopefully I didn't forget anything, open to comments on anything at all (including that name change is not a good idea)