Comments (5)
well, unit.ex
is gone now, so I guess it's moot!
re: aliasing, hahaha! yes, I should make an iex.exs
file so I can stop complaining
from benchee.
Hey :)
I like the directory structure to reflect the module hierarchy. This is one of the main reasons why I'd probably like to stick with the unit name space. It all goes neatly into a folder and it adds some context. For Benchee.Duration
one could otherwise think that it is the one measuring the duration.
Moreover, I feel like the units are not a primary concern of Benchee. It's great to have and I'm even reusing it right now in the HTML/plotly_js formatter, but I could also imagine those coming from a separate library.
Funnily enough, when I first reviewed your PR I was thinking that I wouldn't have put them into their own namespace but found it to be nicer.
Not set on this though, happy to be convinced otherwise :)
Tobi
from benchee.
I'm ok with the namespace. Maybe just feeling too lazy to type it. I agree that Benchee.Duration
could be confused with a measure of duration, although I don't think it's incorrect/misleading to use Benchee.Duration
to name a collection of functions for dealing with numbers representing duration.
I also agree that keeping this concern in its own directory emphasizes the fact that the functions are all helpers and not core.
So here's a taste questions for you: how do you feel about movingunit.ex
inside the unit
directory? In Ruby there is some reason for having it as a sibling of the unit
directory, but here it just seems out of place, since there's no technical reason for having a unit-related file outside of unit
.
I'm still trying to figure out the best approach for this sort of thing in Elixir 😀
from benchee.
Ha! Interesting point, my ruby instincts tell me to leave it outside of the dir, but can't argue with your reasoning. Let's move it inside the directory and see how we like it?
- about the name typing, feel free to
alias Benche.Unit.Duration
at will :)
from benchee.
Closing because we have decided to maintain the hierarchy
from benchee.
Related Issues (20)
- Sugguestion: Express time in `h:m:s` HOT 4
- Promote use of keywords lists instead maps for job list HOT 3
- Is it worth releasing a new version? HOT 2
- Is there an option to try all possible scenarios once to know early if some would raise ? HOT 2
- Suggestion: Option to kill long-running scenarios early HOT 2
- Is it possible to benchmark a subprocess call like `python -c "8*9"`? HOT 5
- Question: Benchmark function operations ? HOT 1
- Warn if the benchmarking function is evaluating HOT 2
- Benchee throws an exception when running in the Livebook-App HOT 3
- Benchee warning when used in mix task HOT 2
- Unpredictable experiment order in output HOT 1
- Elixir provide HOT 1
- Built in outlier detection
- suggestion HOT 1
- (Protocol.UndefinedError) protocol List.Chars not implemented for {:error, :bad_name} HOT 5
- High memory consumption on some cases HOT 8
- Top level functions slower than module functions in Elixir <1.16 HOT 7
- Avoid handing all of inputs to every scenario process
- Add Solaris Support to Benchee.System HOT 3
- Benchmarking between BEAM versions HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from benchee.