New beginnings - looking for part-time D programming help

2023-03-23 Thread Laeeth Isharc via Digitalmars-d-announce

Hi.

For those that didn't hear, I resigned from Symmetry in September 
and my last day was a couple of weeks back.


I don't have any concrete plans yet, but I've agreed not to do 
anything in the hedge fund world for quite some time and I've 
also agreed not to hire anyone that's an employee or consultant 
for Symmetry.


Out of little acorns do great oaks grow and the best beginnings 
are often not much, just a little hobby project.  I sat down in 
early 2014 and wrote down what I called hedge fund in a box - 
what are the things I am going to need to build so I never have 
to worry about them again.  Not always quite in that form, but 
it's remarkable how many of those little beginnings ended up 
coming to fruition in what was an 11bn hedge fund by the time I 
left.


With that said for now I don't have much, just a few ideas about 
how to solve some of my own problems, knowing there's just a 
chance they might be useful down the line to others.


I'm paying out of my own pocket and my budget is modest for now 
so this isn't going to be an opportunity interesting for someone 
currently embedded in big tech !


You can speak to some of the people I hired at Symmetry - if this 
ever becomes anything then I will pay well to very well over 
time.  But you shouldn't bet on it becoming anything at all.  If 
you do good work but nothing comes of it and you're interested in 
getting a job in finance I can help you navigate that world and 
the experience may help you achieve your goals.  But I am not 
sure I would recommend most jobs in finance.


What kind of work?  Initially some scripting in D to integrate 
things and a little bit of work with LLM embeddings and fine 
tuning, STT transcription, classifiers, parsing.  Some 
presentation work - gui or web I don't mind.


What kind of person?  You need to be a talented hacker that's 
interested in learning and accomplishing things.  You don't need 
an impressive CV - my best documentation Dev hire was a Spanish 
baker with no enterprise experience.  (Just the kernel, lol).


What's the vision?  Well I will say more when I can but how 
people do work today in organisations is broken and it's 
miserable and I would like to play a part in transforming that.


Full remote is ideal as I live on an island.  If you happen to 
live near Rennes, Saint Malo or Amsterdam then it's easier for me 
to visit you.


Let me know any questions.


laeeth+reboot at laeeth.com





Semi - OT: LLVM blog on calling most of C++ from a DSL written in D

2021-03-27 Thread Laeeth Isharc via Digitalmars-d-announce

https://blog.llvm.org/posts/2021-03-25-cling-beyond-just-interpreting-cpp/


Talk before Compiler Research Group at IRIS-HEP Princeton on SIL-cling

2021-02-23 Thread Laeeth Isharc via Digitalmars-d-announce

https://youtu.be/7teqrCNzrD8

https://t.co/2iAWdO9cXA

Alexandru Militaru speaks to Compiler Research Group, IRIS-HEP at 
Princeton about his work at @SymmetryInvest  using CERN's cling 
to compile and call C++ from our internal domain specific 
language, SIL.


#dlang #cling


Re: FeedSpot Recognizes the GtkDcoding Blog

2020-02-08 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 7 February 2020 at 16:00:07 UTC, bachmeier wrote:

On Friday, 7 February 2020 at 15:05:13 UTC, Russel Winder wrote:
True companies have convinced themselves that only licences 
that allow stealing of others' intellectual work are 
acceptable to business, but then that is the point, they can 
steal the intellectual work with impugnity.


A rant of my own:

The push against the GPL is mostly by those who want free 
software to mean "free labor". GPL software can be dual 
licensed. Companies can pay for an alternative licensing 
arrangement if it's that valuable to them. Instead they want 
"free" software that allows them to avoid payment while 
imposing restrictions on how others use the software.


How do you pay for an alternative licensing arrangement when 
there are a gazillion contributors some of whom are untraceable 
and when in practical terms any one of those saying no might make 
it in practical terms impossible? Software can be dual licensed, 
but it often isn't, particularly with community developed 
software.


Most software is internal software I think.  But a company needs 
to make decisions strategically in the face of uncertainty.  
Suppose you are considering a library for internal use and not 
planning to redistribute.  But business is uncertain.  Maybe it 
could be you want to redistribute your software to a future 
partner.  Now if you use a viral license library that doesn't 
give you an option to pay for it then you are shutting off that 
option.





Re: My Android project nearing beta

2020-01-06 Thread Laeeth Isharc via Digitalmars-d-announce

On Monday, 6 January 2020 at 14:37:54 UTC, Adam D. Ruppe wrote:

On Sunday, 5 January 2020 at 03:56:37 UTC, visitor wrote:

Not a single line of java!


so i got kinda excited for creating a class 100% in D as well, 
but.


https://developer.android.com/training/articles/perf-jni.html

"DefineClass is not implemented. Android does not use Java 
bytecodes or class files, so passing in binary class data 
doesn't work."




I haven't tried, but:

https://github.com/linkedin/dexmaker


Re: Article about D in the iX magazine

2019-12-22 Thread Laeeth Isharc via Digitalmars-d-announce
On Sunday, 22 December 2019 at 13:05:02 UTC, Robert M. Münch 
wrote:

On 2019-12-20 21:26:00 +, Andre Pany said:

In the new iX (1 Januar 2020) there is also a Leserbrief for 
the article;)


Even there are only few comments, every comment helps.

It's very hard to convince programmers to give something else a 
try and stay to it long enough to see the light. Most of the 
time, evangelizing is very frustrating. The better strategy 
from my experience is: Deliver a cool product and than tell 
everyone "we are 10 times more productive than our competitors 
while delivering a better product." You can be sure, everyone 
wants to know how you do it.


I think it's much better to spend most time on those receptive to 
it anyway, which is a very small proportion of the programmers 
many people might know in real life.  The beauty of being the 
challenger is you can keep growing by persuading only a small 
proportion of people who were already poised on the edge or would 
be if they knew of D.


Yes - I agree that delivering value speaks the loudest.  But of 
course in a competitive market it's not necessarily going to be 
something people discuss.  It's outside the reality of many 
others, what can be achieved with D, and at the same time you 
don't necessarily want to actually make it vivid to your 
competitors how they could do what you did.


I think also that enthusiasm and working code might be more 
effective than logic and feature comparison.


The biggest asset the D community has might be the calibre of 
people that are drawn to it and that stick with it...





Re: LDC 1.18.0

2019-10-25 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 23 October 2019 at 02:22:56 UTC, zoujiaqing wrote:

On Thursday, 17 October 2019 at 04:04:41 UTC, Newbie2019 wrote:

On Wednesday, 16 October 2019 at 22:31:41 UTC, kinke wrote:

Thanks for keep up the good work.

Android CI is really a great for mobile users, I wish some day 
there also include IOS cross build binary package.


Yes, I wish it too.
LDC for iOS needed.


We use iOS.  If somebody were willing to do the work of bringing 
LDC up to date and maintaining it maybe we could support the 
work, or at least contribute to it.




Re: Five Projects Selected for SAOC 2019

2019-09-04 Thread Laeeth Isharc via Digitalmars-d-announce

On Tuesday, 27 August 2019 at 17:32:30 UTC, Max Haughton wrote:
On Monday, 26 August 2019 at 18:51:54 UTC, Vladimir Panteleev 
wrote:

On Sunday, 25 August 2019 at 13:38:24 UTC, Mike Parker wrote:
The Symmetry Autumn of Code 2019 application selection 
process has come to an end. This year, we've got five 
projects instead of three. Congratulations to everyone who 
was selected! You can read about them and their projects over 
at the D Blog:


https://dlang.org/blog/2019/08/25/saoc-2019-projects-and-participants/


Sorry, I haven't been following. Don't we already have an 
implementation of the "Create a CI or other infrastructure for 
measuring D’s progress and performance" project? I just 
haven't been maintaining it because there hasn't been a lot of 
interest in it while it was being maintained.


Here's the original blog post:

https://blog.thecybershadow.net/2015/05/05/is-d-slim-yet/

I'll give it a kick and get it back online if there is 
interest. Seems wasteful to reimplement it from scratch, 
though.


I was aware of the site when i wrote the proposal, but the idea 
is to create the infrastructure to add more measurements too, 
e.g. profiling the compiler or testing it under limited memory 
(I found out how much memory my CTFE thing was using the other 
day!). Assuming I can get it to work I'd also like to throw the 
Linux perf system in there too,


Take a look at BPF.  Might be some work to wrap and if I recall 
right some of the C headers are a bit gnarly.  But it's pretty 
powerful.


https://github.com/brendangregg/bpf-docs



PoC: Runtime Reflection in D on C++ code

2019-07-08 Thread Laeeth Isharc via Digitalmars-d-announce
It's rough and ready - no proper build and not at all 
well-tested.  But it will definitely work in time since it uses 
the fork of libcling for cppyy that's used at scale for CERN. 
cppyy generates python bindings for C++ code on the fly using the 
cling interpreter (it handles templates by doing the 
specialisation at python runtime).


I'm a bit short of time, so putting this out here in case it's 
useful for anyone - might be some months before I get to look at 
it again.


https://github.com/kaleidicassociates/cpp-reflect-d

ROOT:
https://github.com/root-project/root

https://cppyy.readthedocs.io/en/latest/

http://wlav.web.cern.ch/wlav/Cppyy_LavrijsenDutta_PyHPC16.pdf



Re: Autonomous driving company is looking for D software engineers

2019-06-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 23 June 2019 at 12:22:18 UTC, XavierAP wrote:

On Tuesday, 18 June 2019 at 19:05:05 UTC, Dragos Carp wrote:
AID GmbH (https://aid-driving.eu) a subsidiary of AUDI AG is 
looking for experienced D-evelopers in Munich.


If you want to employ your D expertise and be part of the 
autonomous driving revolution, apply under: 
https://jobs.lever.co/aid-driving/c4b243bd-c106-47ae-9aec-e34d5bbe0ce1?lever-via=vcPRnEaCR3


Thank you very much for sharing.

You work at AID? As Laeeth says, could you let us know whether 
it would be ok to add a mention to AID to the Dlang website?


https://dlang.org/orgs-using-d.html


https://www.reddit.com/r/programming/comments/c4f1hu/dlang_being_used_for_autonomous_driving_research?sort=confidence





Re: Autonomous driving company is looking for D software engineers

2019-06-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Tuesday, 18 June 2019 at 19:05:05 UTC, Dragos Carp wrote:
AID GmbH (https://aid-driving.eu) a subsidiary of AUDI AG is 
looking for experienced D-evelopers in Munich.


If you want to employ your D expertise and be part of the 
autonomous driving revolution, apply under: 
https://jobs.lever.co/aid-driving/c4b243bd-c106-47ae-9aec-e34d5bbe0ce1?lever-via=vcPRnEaCR3


Nice work.

Could somebody perhaps check with AID and if it's okay add their 
name to the list of companies using D.





Re: my first kernel in betterC D

2019-06-19 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 19 June 2019 at 13:45:45 UTC, matheus wrote:

On Sunday, 16 June 2019 at 16:14:26 UTC, Laeeth Isharc wrote:

...


Nice indeed, maybe you should mention this on reddit?

Matheus.


Feel free to.  But I didn't do any work - I changed a few lines 
in the C code and of course it just worked.  So I would feel 
embarrassed posting to Reddit because the original author did the 
hard bit and I just made trivial changes.


You know I think Atila is right about social factors and 
integration being everything.   The objections to using D are 
just that - it's not really about what people say mostly, but 
those are excuses to rationalize how they feel.


One aspect of that is just showing something is possible.  Adam 
Ruppe's talk at dconf a while back has had a lasting influence on 
how we approach things, mostly for giving me permission to do 
what I'm naturally inclined to do anyway.  If you're not sure 
then bet a little time to try - the worst thing that can happen 
in user code is a segfault and so what.


For example our business is not primarily about network 
programming at a lowish level.  But when people say file 
transfers to Asia are slow because of the speed of light and 
latency one doesn't need to accept that.  It's quite a similar 
problem - latency and packet loss - to the days of 300 baud 
models and XModem and there's an obvious solution.  But before 
doing it myself I figured someone must have solved it and I found 
UDT.  I spent half a Saturday wrapping it so it built but 
wouldn't work and Robert Schadek finished the job in a day or 
two.  What's a decent performance improvement these days?  Well 
I'm pretty happy with a 300 times (not 300%) improvement in file 
transfer speed between regions!  And we can pull that plus libzfs 
in D plus our little language to have a tool for managing zfs 
snapshots and replication that makes everything simple because 
it's coherently designed and integrated.


Anyway I think sometimes a barrier to adoption is sometimes just 
nobody has yet shown the problem is easily solved using D in your 
domain.  We are in an age that's short on daring and ambition, 
which means a little bit of courage goes a long way.  Nobody 
could break the four minute mile.  One guy did it and then lots 
of people followed.


Most people closest to using D that aren't I guess will have a 
decent size C or C++ code base.  DPP keeps getting better in 
relation to
C++ and we want to get it to a stage where it can be used to 
expose an internal library that's still got a C++ interface but 
is being replaced step by step with D.  Thanks, Daniel Murphy for 
showing the way there, though we aren't able to do the 
translation programmatically.  DPP has paid for the modest 
support we provided many times over already even just considering 
direct benefits.


I wonder a bit about translation from C.  Rust 2C was a multi 
million DoD project.  We could steal the front end that dumps out 
the libclang C AST as CBOR.  I suppose it shouldn't be hard to 
translate that to C-style D programmatically.  It "adds nothing" 
to libclang in theory but it saves a lot of time as libclang is 
not the most complete or pleasant API I have seen.


If we had something dependable it would be much easier to move a 
C codebase incrementally to D because you could just do what you 
can manage at that time and you don't need that much imagination 
or courage because it doesn't end up being a big binary bet.  I 
guess translating C++ programmatically is a much harder, maybe 
almost impossible problem.  But C would be a start.


I have my hands full right now but I would play with doing it 
myself if I had more time...



Laeeth


my first kernel in betterC D

2019-06-16 Thread Laeeth Isharc via Digitalmars-d-announce

https://github.com/kaleidicforks/mkernel-d

I spent a few minutes on just turning the C code to betterC D - 
was curious to see if it would work.  It seems to.  I didn't try 
loading with GRUB.  The dub.sdl isn't quite right, so best run 
./build.sh


Cannot push to code.dlang.org - it complains about registering a 
forked package, even after renaming.


Re: DConf 2019 Livestream

2019-05-08 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 8 May 2019 at 08:04:08 UTC, Mike Parker wrote:

On Wednesday, 8 May 2019 at 08:00:15 UTC, Andrej Mitrovic wrote:

On Wednesday, 8 May 2019 at 07:57:40 UTC, Mike Parker wrote:
The venue uses WebEx for livestreaming. All the information 
is available in this PDF:


https://drive.google.com/open?id=1yekllbfOmxHqJNuuWIVeP9vNeROmfp1I


"When joining: Please connect using Internet Explorer, not 
Google Chrome or another web

browser."

You guys can't be serious, you're using WebEx?


Not us. The venue.


Sorry about that.  It was supposed to be streaming to YouTube, 
but it fell through the cracks.  We are looking into it now.



Laeeth



Re: DConf 2019: Shepherd's Pie Edition

2018-12-27 Thread Laeeth Isharc via Digitalmars-d-announce
On Thursday, 27 December 2018 at 17:00:05 UTC, Robert M. Münch 
wrote:

On 2018-12-22 21:38:42 +, Laeeth Isharc said:

On Saturday, 22 December 2018 at 18:47:40 UTC, Robert M. Münch 
wrote:

On 2018-12-22 12:18:25 +, Mike Parker said:

Thanks to Symmetry Investments, DConf is heading to London! 
We're still ironing out the details, but I've been sitting 
on this for weeks and, now that we have a venue, I just 
can't keep quiet about it any longer.


Hi, you should consider the upcoming Brexit chaos, which is 
expect to have a high impact on all airlines. Currently I 
wouldn't bet that all parties involved get things sorted out 
until May...


I would be happy to bet they do. The EU and US are already 
agreed.


https://www.bbc.co.uk/news/business-46380463


Well, we will see. But it's not the EU and US, but UK and US 
that agreed after your reference. Since I'm not from the US 
this information doesn't help a lot. And the significant part 
of your reference is this: "Theresa May's Brexit agreement with 
Brussels says that the UK and EU have agreed to negotiate a 
"comprehensive air transport agreement" for UK-EU flights 
during the planned transition period but it would not apply if 
the UK left the EU without a deal. In September the government 
warned a no-deal Brexit could cause disruption to air travel 
between the UK and European Union countries."


You might be aware that the "No Deal Scenario" is currently 
much more likely... but again, everyone is free to do what they 
want.


In the event of no-deal, flights will continue as before except 
UK operators flying _within_ Europe on domestic or intra-EU 
flights will need to get a license.  UK operators can continue to 
fly to Europe, and we already said the European operators can fly 
here.  This is a relatively recent official confirmation of what 
was always fairly obvious - a negotiating position is not quite 
the same thing as the position in actuality.


http://www.travelweekly.co.uk/articles/319768/updated-european-commission-reiterates-flights-will-go-ahead-post-brexit

You can read the technical guidance if you wish.  Naturally it 
comes with the spin you would expect.


And since flights to and from the EU will continue to operate, I 
doubt very much that flights between Britain and anywhere else 
will cease to operate.


Britain has a current account deficit with every European nation 
bar Ireland and I think Malta, meaning we import more than we 
export.  The wilder scenarios painted assume that one of the two 
parties would deliberately sabotage their own economy.  I don't 
think so.


I had lunch with a lawyer who advised Cameron and Osborne in 
their negotiations with the EU.  He has written five books on 
Brexit, approaching it from a technical rather than political 
perspective.  He pioneered the suggestion of enhanced equivalence 
which will likely be the roadmap for financial services.  He says 
Brexit consists of a multitude of small problems which will have 
to be overcome by the people closest to them.  But a no-deal 
Brexit would be fine and quite quickly rather positive.


All of this stuff "if there is a no-deal Brexit, Theresa May 
_could_ run out of insulin" - that word could is like nasal 
demons in UB with C.  It's a funny use of the word could - the 
lawyer called the insulin suggestion an insult to the 
intelligence.  And my sister in law is a partner in a 
pharmaceutical regulatory firm here in Germany where I write 
from, and she agrees the suggestion is nonsense.


There's a lot of such stuff about, generated for partisan 
reasons.  The track record of such suggestions is pretty dire - 
both Mervyn King, former Governor of the Bank of England,and Paul 
Krugman, a former trade economist, haha, suggested that the Bank 
was damaging its reputation by making such political arguments.


So it's best to go to the primary sources and technical 
documentation.  There are more entertaining ways to scare oneself 
if that's what one wants.


But flights will be running as good or bad as they ever do,as 
best I can tell.




Re: DConf 2019: Shepherd's Pie Edition

2018-12-22 Thread Laeeth Isharc via Digitalmars-d-announce
On Saturday, 22 December 2018 at 18:47:40 UTC, Robert M. Münch 
wrote:

On 2018-12-22 12:18:25 +, Mike Parker said:

Thanks to Symmetry Investments, DConf is heading to London! 
We're still ironing out the details, but I've been sitting on 
this for weeks and, now that we have a venue, I just can't 
keep quiet about it any longer.


Hi, you should consider the upcoming Brexit chaos, which is 
expect to have a high impact on all airlines. Currently I 
wouldn't bet that all parties involved get things sorted out 
until May...


I would be happy to bet they do.  The EU and US are already 
agreed.


https://www.bbc.co.uk/news/business-46380463





Re: D compilation is too slow and I am forking the compiler

2018-11-29 Thread Laeeth isharc via Digitalmars-d-announce
On Wednesday, 28 November 2018 at 13:30:37 UTC, Guillaume Piolat 
wrote:
On Wednesday, 28 November 2018 at 12:48:46 UTC, Laeeth Isharc 
wrote:


Nassim Taleb raises the question of how do you choose between 
two surgeons, both recommended.  One looks the part and hangs 
his many certificates on his office wall.  The other looks 
scruffy with the appearance of a tradesman.  Who do you pick?  
Taleb says pick the guy who doesn't look the part because if 
he got there without signalling he must have something going 
for him.



It's definately the kind of surgeon one should choose - 
programmers that are not necessarily well groomed etc.. - but 
is it the kind of surgeon people will actually recommend? I'm 
doubtful.


If X has the social signalling then people will recommend X 
even without trying, because it's socially safe.


If one doesn't have the signalling, I've found the hard way 
even supporters will hesitate a bit before making 
recommendations, because of the social standing _cost_ it may 
have.


But then, perhaps recommendations don't matter, because 
opinions don't matter much? I think they matter to be even 
heard on public places.


And I think early adopters need a nudge, the influent need to 
be bothered by less influents (influencers are not especially 
on the lookout for new options, as they are already influent). 
Above all I think the niche of early-adopters is smaller than 
the larger market for languages, and the early-adopters are 
going elsewhere.


The innovator's dilemma, which is really an insight that dates 
back to Toynbee, and before that Ibn Khaldun, is not so obvious.  
I am not sure that you have understood it.  I suggest reading the 
book if you are interested, but otherwise I unfortunately don't 
have so much time at the moment to try to persuade you of what 
this phenomenon is like and there's limited value to talking 
about talking rather than having a discussion based on a shared 
understanding of what this is about.




Re: D compilation is too slow and I am forking the compiler

2018-11-29 Thread Laeeth isharc via Digitalmars-d-announce
On Wednesday, 28 November 2018 at 13:05:34 UTC, Guillaume Piolat 
wrote:
On Wednesday, 28 November 2018 at 12:48:46 UTC, Laeeth Isharc 
wrote:


D isn't really marketed and it's definitely not sold.  That's 
an implicit strategy in itself.



What I see in my (absurdly competitive) market is that the 
people that truly do no-marketing tend to close shop, sometimes 
despite very competitive offerings.


It colors my perception of course, since it can be very 
tempting to appeal to a limited pool of discerning customers; 
but that would mean death.


What is the ratio of expenditure of your best customer to an 
average customer?   Not much.  That's one main reason why your 
intuition developed by organising your emotions according to your 
business domain fits this domain less.


What is the ratio of expenditure of the biggest 'customer' of 
Python to the average 'customer'?  Measured by resources lent to 
the community directly or indirectly, or by the wage bill of 
programmers at that firm working in Python this ratio is enormous.





Re: D compilation is too slow and I am forking the compiler

2018-11-28 Thread Laeeth Isharc via Digitalmars-d-announce
On Monday, 26 November 2018 at 16:00:36 UTC, Guillaume Piolat 
wrote:
On Thursday, 22 November 2018 at 04:48:09 UTC, Vladimir 
Panteleev wrote:
On Wednesday, 21 November 2018 at 20:51:17 UTC, Walter Bright 
wrote:
Unfortunately, you're right. The title will leave the 
impression "D is slow at compiling". You have to carefully 
read the article to see otherwise, and few will do that.


Sorry about that. I'll have to think of two titles next time, 
one for the D community and one for everyone else.


If it's of any consolation, the top comments in both 
discussion threads point out that the title is inaccurate on 
purpose.


Please don't get me wrong, it's an excellent article, a 
provocative title, and fantastic work going on. I didn't meant 
to hurt!


In my opinion language adoption is a seduction/sales process 
very much like business-to-consumer is, the way I see it it's 
strikingly similar to marketing B2C apps, unless there will be 
no "impulse buy".


I think that there are different strategies - decent appeal to a 
broad market and having a very high appeal to a small market (but 
there has better be something good about your potential customer 
base ie 'D, if you find VBA too difficult' is probably not a good 
strategy!).  And you probably don't get to pick which situation 
you are in, and then one had better realise it and play the game 
you're in.  The particular kind of market will shape what works - 
in my business you approach a retail client base differently from 
regular institutional investors and then the worlds' largest 
pools of money involved something else again.


D isn't really marketed and it's definitely not sold.  That's an 
implicit strategy in itself.


Nassim Taleb raises the question of how do you choose between two 
surgeons, both recommended.  One looks the part and hangs his 
many certificates on his office wall.  The other looks scruffy 
with the appearance of a tradesman.  Who do you pick?  Taleb says 
pick the guy who doesn't look the part because if he got there 
without signalling he must have something going for him.


But in general you can appeal on merits mostly to an audience 
that is highly discerning and very capable.  If you haven't got 
any money to appeal to an audience that judges based on 
heuristics and social factors well then you can try to avoid 
accidentally putting people off, you can be creative with 
guerilla marketing but the key thing is to make the most of what 
you got.  If everyone else does things a certain way then if for 
some reason that's closed off to you for now then if you look 
closely, with active perception,you may well see opportunities 
that are neglected to approach the problem another way.


Actually no less than 3 programmer friends came to (I'm the 
weirdo-using-D and people are _always_ in disbelief and invent 
all sorts of reasons not to try) saying they saw an article on 
D on HN, with "D compilation is slow", and on further 
examination they didn't read or at best the first paragraph. 
But they did remember the title. They may rationally think 
their opinion of D hasn't changed: aren't we highly capable 
people?


It doesn't matter what most people think.  It matters what people 
who are on the fence or using D already a bit think.  Or people 
who have a lot of problems to which D is in part a solution only 
they didn't know about or think of D yet.


The messenger matters too.  If someone you trust and rate highly 
tells you something based on their experience that counts for a 
lot more than all the blog posts in the world.  And working code 
and lived experience dominates the social talk about it.


I've talked about D with the CTO of Bloomberg, the outgoing COO 
of Barclays investment bank, the number two guy at a 30bn hedge 
fund, the COO of the largest hedge fund in the world (depending 
on how you count) and more.  That's not going to change anything 
tomorrow but in time those kinds of conversations matter much 
more than what people might say on Reddit. It's not either /or of 
course, but it's just not worth sweating your reviews.


Finally the reasons people buy things are not what you might 
reasonably think!  Ask Walter how he was able to compete 
successfully for so long as a one man band with Microsoft.  I 
don't think his edge was in the beginning something calculated.



Reasonable people may think marketing and biases don't apply to 
them but they do, it works without your consent.


The thing is that we had a bubble in synthetic manufactured 
marketing.  And now increasingly people are tired of that and 
seek what's authentic, real and that doesn't pretend to be 
perfect.


That doesn't mean a bit of thought is a bad idea,just that it 
might matter less than you think that the D community isn't 
particularly interested in marketing.  Sometimes one can see that 
hidden in what superficially seems to be a weakness is a strength.





Re: xlsxd: A Excel xlsx writer

2018-11-09 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 7 November 2018 at 16:49:58 UTC, H. S. Teoh wrote:
On Wed, Nov 07, 2018 at 04:41:39PM +, Robert Schadek via 
Digitalmars-d-announce wrote:

https://code.dlang.org/packages/xlsxd

Announcing xlsxd a OO wrapper for the C library libxlsxwriter 
[1].


Run:

import libxlsxd;
auto workbook  = newWorkbook("demo.xlsx");
auto worksheet = workbook.addWorksheet("a_worksheet");
worksheet.write(0, 0, "Hello to Excel from D");


and you have created a Excel spreadsheet in the xlsx format 
with name

demo.xlsx
that contains the string "Hello to Excel from D" in row 0, 
column 0.


[1] https://github.com/jmcnamara/libxlsxwriter


Is there support for reading xlsx files too?


T


There are various C libraries.you could just use DPP to call 
them..




Re: Wed Oct 17 - Avoiding Code Smells by Walter Bright

2018-11-02 Thread Laeeth Isharc via Digitalmars-d-announce
On Thursday, 1 November 2018 at 22:37:59 UTC, unprotected-entity 
wrote:

On Thursday, 1 November 2018 at 03:10:22 UTC, H. S. Teoh wrote:


Actually, code within a module *should* be tightly coupled and 
cohesive -- that's the whole reason to put that code inside a 
single module in the first place.  If two pieces of code 
inside a module are only weakly coupled or completely 
decoupled, that's a sign that they should not be in the same 
module at all.  Or at the very least, they should belong in 
separate submodules that are isolated from each other.


How does one determine, whether a 10,000 line module, is 
tightly coupled and cohesive?



You take a look through it and make a judgement.

Only the author can make that statement - which they naturally 
will, even if it's not true.


?

An outsider, seeking to verify that statement, has a hell of a 
job on their hands...(I for one, think code smell immediately).


There is a basic question in life.  Do you believe in discernment 
(if possible informed by data) or are you someone who makes 
decisions on the basis of evidence and believes that anything 
else is completely arbitrary and nothing more than a matter of 
opinion.


My impression is that the values of the D community tend more in 
the direction of recognising the importance of discernment. If 
someone is somebody who believes more in 'evidence', policy and 
rules then it probably isn't going to be satisfying expecting 
one's values to be shared on a wide scale here.


People also differ in their working memory and the degree to 
which they naturally think associatively.  Chopping up everything 
into small pieces favours those who have a smaller working memory 
and who think more analytically but it's a disadvantage for those 
who have a large working memory and think associatively.  For a 
private project that's something to be resolved between the 
relevant people, but I don't think it's reasonable to say that 
large files per se are wrong, just because they aren't your cup 
of tea personally.


I think that lots of things seem clear in theory but the 
difference between theory and practice is often quite large.


In practice Phobos is very readable.

And on the other hand, I have seen an experienced and capable C# 
programmer struggle to understand an intranet site written in the 
approved way by an experienced person who was well-trained at 
Microsoft.  I couldn't understand it either so I concatenated all 
the little itty bitty files, pulled out the data structures and 
then it was easy.


I don't use a particular language. I'm more interested in 
design and architecture.


Can one really speak of that kind of design in the abstract ?  
Language features shape your choices and lead to large shifts in 
the optimum.  If you don't have design by introspection as a 
possibility you are going to pick something else.


In the age of 'lock-down-everything', increased modularity is 
becoming more important. A monolithic module approach, is 
already outdated, and risky, in terms of developing secure, 
maintainable software


If you can't understand the program does that make you more or 
less secure?  Security requires also to understand the behaviour 
of the system as a coherent whole.  I think D programs are pretty 
easy from that perspective.


Is that really such a bad idea? Are there no programmers out 
there in the D world that might think this could be a good, 
additional tool, to give programmers, so they can better 
architect their solution?


Burden of proof is on you to write a DIP and make an argument for 
it.  I am not sure you would find it easier to get a change into 
C++.  Look at how difficult it is for Walter sometimes ; and he 
has just a little earned credibility.  Same thing for Guido - he 
had such little fun with a recent PEP he decided to retire from 
BDFL of python.


The amount of push back in the D community on this idea, is 
really odd to me. I'm still trying to understand why that is.


Persuading people isn't easy even if it's a good idea.  Look at 
the pushback from C++ over static if.  They crippled it when they 
finally did relent.  It's a bit entitled to think that if you 
can't persuade people without having written a DIP that it's them 
not you!


Are D programmers just hackers, insterested in getting their 
code to work, no matter what? Are their not enough Java/C# 
programmers coming to D - and bringing their design skills with 
them?


Would you mind explaining why you think that people from mass 
communities have design skills by virtue of having come from a 
mass community?  Walter and Andrei are just a little bit known 
for their design capabilities so the bar is quite high.  I think 
it's possible you might have things topsy turvy.


Making D code work is rarely a problem.

Every nation has its own strengths and weaknesses and the same is 
true of language communities.


Having worked with D professionally since 2015 and with a decent 
size codebase in 

Re: New Initiative for Donations

2018-10-28 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 26 October 2018 at 06:19:29 UTC, Joakim wrote:
On Friday, 26 October 2018 at 05:47:05 UTC, Neia Neutuladh 
wrote:

On Fri, 26 Oct 2018 02:38:08 +, Joakim wrote:
As with D, sometimes the new _is_ better, so perhaps you 
shouldn't assume old is better either.


There's no assuming going on. Cryptocurrencies are worse than 
credit cards for everything that normal people care about,


Such as? I already noted that they're easier and cheaper, you 
simply flatly state that "normal people" find them worse.



and they're better than credit cards for illegal transactions.


Yes, just like cash, and have other benefits that come with 
cash too.



This might eventually change, and we can re-evaluate then.

If for some reason cryptocurrencies become popular and 
sufficiently stable to be used as currency, I have no doubt 
that existing credit card companies will start offering 
automatic currency exchange, so you can have an account in USD 
and pay a vendor who accepts only Ethereum, or vice versa. As 
such, accepting credit card payments is good enough.


I don't know what we'd be waiting for, the tokens I mentioned 
are all worth billions and widely used, particularly by techies:


https://coinmarketcap.com

Why would I wait for antiquated credit-card companies to accept 
these tokens? The whole point of these new tokens is to 
obsolete the credit card companies.


Cryptocurrencies are worse is better for some people in some 
contexts.  HSBC started the process of shutting down my company 
bank account because payments to programmers in Russia triggered 
some alerts and you get caught up in this Kafkaesque maze where 
there is nobody reasonable to talk to.  I wrote to the Chairman 
in Hong Kong and only then could I get them to see reason and 
apologize.  So for making payments to Russia, yes if the other 
side accepts them, worse is better in this case.  For Venezuela 
or some African countries worse is obviously better quite a lot 
of the time. For making smaller payments overseas 
cryptocurrencies with low fees like BCH can be more efficient 
than a bank wire, even in the West.


As regards particular currencies, deadalnix, member of the D 
community and creator of SDC compiler project is the man behind 
Bitcoin ABC, the largest Bitcoin Cash client, and one of the key 
people technically for Bitcoin Cash overall.





Re: New Initiative for Donations

2018-10-28 Thread Laeeth Isharc via Digitalmars-d-announce
On Saturday, 27 October 2018 at 14:33:43 UTC, Neia Neutuladh 
wrote:

On Sat, 27 Oct 2018 10:54:30 +, Joakim wrote:
I see, so you want other taxpayers to bail you out for your 
mistakes, interesting.


One of the major points of having a government is to create 
these regulations that make it less likely for individuals to 
suffer from the actions of other people and organizations.


Another major point is to help people in need using the 
collective efforts of society.


Programs like FDIC in the United States exist to serve both of 
these: it's an extra set of regulations for banks, and 
compliant banks will be bailed out if circumstances require. If 
I choose an FDIC bank and the owners run off with my money, I 
didn't make an avoidable mistake, any more than being mugged in 
the street is me making a mistake.


If you oppose that, you're gunning for an eventual repeat of 
the Great Depression.


Banks are special because of the payments system and because of 
lending.  In October 2008 Gordon Brown was within two hours of 
shutting down the banking system and declaring a state of 
emergency.  If that had happened nobody would have been able to 
make payments and new lending would have come to a halt.


In 2038 you won't need banks to make payments because 
cryptocurrencies will be a viable alternative.  And lending is 
already being provided by asset managers.  So the justification 
for the combination of leverage and the mismatch in liquidity and 
risk of banks deposit liabilities and their assets will 
disappear.  The component of TARP that constituted aid to the 
financial system made a profit, but nonetheless there will be 
very little public appetite for a repeat the next time around.


At the request of the UK debt management office, I met the 
representative of the IMF financial stability review in early 
2005.  He had a bee in his bonnet about the dollar yen carry 
trade and hedge funds: generals always fighting the last war.  I 
told him to worry about the banks and what they were buying.  He 
didn't listen.  So regulators have little skill when it comes to 
understanding systemic risk posed by the asset and liability 
decisions of banks and so it will be good to make that function 
redundant.


So cryptocurrencies matter.  They are far from mature right now 
though and it's not the most important thing if you have limited 
resources to accept them.  The best way to get the Foundation to 
accept them might be to do the work to help...








Re: D kernel for Jupyter notebook

2018-09-05 Thread Laeeth Isharc via Digitalmars-d-announce
On Tuesday, 4 September 2018 at 04:58:41 UTC, Shigeki Karita 
wrote:

On Monday, 20 August 2018 at 00:14:03 UTC, Shigeki Karita wrote:

On Sunday, 19 August 2018 at 20:33:45 UTC, Laeeth Isharc wrote:
Proof of concept works, but it requires some further 
development to be useful to do work in.


[...]


Great. I have tried DUB integration. It seems to work. 
https://github.com/ShigekiKarita/grain/blob/master/example/repl.d


I'm making a jupyter based tutorial for my library. It might be 
the first example for jupyterd.


https://github.com/ShigekiKarita/grain/blob/master/tutorial.ipynb


Very cool.  Thank you.

I was looking into Jupyter widgets. I ported over some of it and 
had to add the extension to protocol for widgets into the 
notebook.  It's not that bad and might be pretty useful to be 
able to access widgets from D.


Half-finished code right now that doesn't even build but I don't 
have so much time and won't for a couple of months.




D kernel for Jupyter notebook

2018-08-19 Thread Laeeth Isharc via Digitalmars-d-announce
Proof of concept works, but it requires some further development 
to be useful to do work in.


https://github.com/kaleidicassociates/jupyterd

It uses D repl currently - this was written for a console 
interface and probably you will encounter difficulties running it 
in a notebook environment.  I guess one would like to treat all 
functions defined in a single notebook as part of the same 
session and to execute immediate statements as part of a main 
specific to that cell.


The kernel is a bit flakey - takes time to come on line and you 
might need to reconnect to it sometimes.


To Do:

1.Add HTML and markdown table output to display arrays of 
structs or of dicts in a useful manner

2.Integrate with mir and other numeric libraries
3.Integrate with charting
4.Consider adding to Dlang tour and run.dlang.io when stable
5.Integrate with dpp
6.Integrate with dub


1 and 3 should be quite simple.  One wouldn't want to write a 
large program in Jupyter, but it's helpful for exploratory data 
analysis and programming where the code that does the work is 
already in D.


Re: Dpp on run.dlang.io

2018-08-06 Thread Laeeth Isharc via Digitalmars-d-announce

On Monday, 6 August 2018 at 13:32:23 UTC, bachmeier wrote:

On Sunday, 5 August 2018 at 22:43:42 UTC, Laeeth Isharc wrote:

One benefit of D is as a better glue language that integrates 
well with other languages and ecosystems.  Many people who 
know a bit about D have no idea that interop can work so 
easily or well.


So it might be worth mentioning this benefit as one link from 
main page and then linking from that to new page that mentions 
and has runnable examples (using HAR) for:


Python (via autowrap:python and pyd)
C (via dpp)
C++ (extern(C++) for now)
R (via embedr)
Julia (via C interface, including julia.h via dpp)
Lua (if LuaD stable enough)


And Octave (via the .mex interface) - this one's important 
because it opens the door to using D as an extension language 
to Matlab


If an Octave extension written in D works, do you have anywhere 
to point me to on what's needed to make it work with Matlab?  (Is 
it usually drop-in compatible?)





Re: Dpp on run.dlang.io

2018-08-05 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 4 August 2018 at 13:15:24 UTC, Seb wrote:

On Saturday, 4 August 2018 at 01:27:49 UTC, Laeeth Isharc wrote:
Thanks to Seb and Atila it is now very easy to show  a D 
program just #includeing C headers.  If just works.  Modulo 
bugs.  In time I am hopeful Atila will start to have more of 
C++ headers working too.


https://run.dlang.io/is/JlH3Th


It now also supports multiple files (and compiling C files) 
with the Har format [1]:


https://run.dlang.io/is/WwpvhT

This should hopefully make it even more useful.

[1] https://github.com/marler8997/har


Thanks v much for this.

One benefit of D is as a better glue language that integrates 
well with other languages and ecosystems.  Many people who know a 
bit about D have no idea that interop can work so easily or well.


So it might be worth mentioning this benefit as one link from 
main page and then linking from that to new page that mentions 
and has runnable examples (using HAR) for:


Python (via autowrap:python and pyd)
C (via dpp)
C++ (extern(C++) for now)
R (via embedr)
Julia (via C interface, including julia.h via dpp)
Lua (if LuaD stable enough)

with just screenshot for:
Excel (via autowrap excel / excel-d)
C# via Binderoo
Jupyter via pydmagic

and just link for web assembly.
Obviously a lot of work, but if you think a good idea we could 
work away at over time.







Re: autowrap v0.0.1 - Automatically wrap existing D code for use in Python and Excel

2018-08-05 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 5 August 2018 at 20:01:22 UTC, Nikos wrote:

On Tuesday, 31 July 2018 at 09:09:11 UTC, Nicholas Wilson wrote:

On Sunday, 29 July 2018 at 18:14:31 UTC, Nikos wrote:

But when I try to export the whole dmdEngine


export:

   auto engine(char[] txt) {
   return interpreter(dmdEngine());
   }





Can you export an instance of `interpreter(dmdEngine())`?

e.g.

__gshared auto dmdi = interpreter(dmdEngine());

export ref dmd()
{
return dmdi;
}

or if that doesn't work, proxy it

__gshared auto dmdi = interpreter(dmdEngine());

struct Dmd
{
mixin Proxy!dmdi;
}
export auto dmd()
{
Dmd d;
return d;
}

That is pretty much required if you want to maintain state 
across.


Also I'm working on a D kernel for Jupyter notebook which 
should be done soon.



Thank you very much for your feedback. Unfortunately, none of 
the above worked.
By the way, the reason I'm trying all this is to create a 
Jupyter notebook. I've already made a simple version of it some 
time ago 
(https://github.com/nikoskaragiannakis/d-jupyter-kernel). Since 
you are also working on a D kernel, maybe we could work 
together?


Working example of Python calling D Repl is here.

https://github.com/kaleidicassociates/pydrepl




Dpp on run.dlang.io

2018-08-03 Thread Laeeth Isharc via Digitalmars-d-announce
Thanks to Seb and Atila it is now very easy to show  a D program 
just #includeing C headers.  If just works.  Modulo bugs.  In 
time I am hopeful Atila will start to have more of C++ headers 
working too.


https://run.dlang.io/is/JlH3Th


Re: Symmetry Autumn of Code

2018-07-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 18 July 2018 at 10:42:04 UTC, Andre Pany wrote:

On Saturday, 14 July 2018 at 06:02:37 UTC, Mike Parker wrote:
Thanks to the sponsorship of Symmetry Investments, the D 
Language Foundation is happy to announce the Symmetry Autumn 
of Code!


We're looking for three university students to hack on D this 
autumn, from September - January. We're also in search of 
potential mentors and ideas for student projects. Head to the 
Symmetry Autumn of Code page for the details.


Spread the word!

https://dlang.org/blog/symmetry-autumn-of-code/


Another proposal: Adding D support to gRPC

I started to add D support to gRPC but paused it due to lack of 
knowledge and time.
One solution would be to add a D wrapper to 
https://github.com/grpc/grpc/tree/master/src by making use of 
the C interface of gRPC 
(https://github.com/grpc/grpc/tree/master/include/grpc).


As template e.g. C++ or python could be used 
(https://github.com/grpc/grpc/tree/master/src).


Kind regards
André


Juniper have an alpha C higher interface on top of the low level 
C core grpc API.  It didn't look too bad, but I didn't have time 
to finish what I started (making a crude D grpc API).


https://github.com/Juniper/grpc-c




Re: dpp now compiles julia.h headers

2018-07-14 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 13 July 2018 at 22:22:25 UTC, Meta wrote:

On Friday, 13 July 2018 at 19:02:56 UTC, Laeeth Isharc wrote:
Atila Neves' d++ now compiles julia.h.  Modulo bugs this makes 
it possible to embed Julia in D (and probably the other way 
around, but I have not tried).


https://github.com/kaleidicassociates/juliad


Very cool. It's awesome to be able to directly #include C++ 
headers.


C++ headers with all basic features are not yet there.  Atila 
thought it might be a couple of months work full-time to be able 
to do


 #include 

It's not out of the question to make that investment, but we need 
to hire a few more programmers locally first.


Re: Symmetry Autumn of Code

2018-07-14 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 14 July 2018 at 07:09:21 UTC, Timoses wrote:

On Saturday, 14 July 2018 at 06:02:37 UTC, Mike Parker wrote:
Thanks to the sponsorship of Symmetry Investments, the D 
Language Foundation is happy to announce the Symmetry Autumn 
of Code!


We're looking for three university students to hack on D this 
autumn, from September - January. We're also in search of 
potential mentors and ideas for student projects. Head to the 
Symmetry Autumn of Code page for the details.


Spread the word!

https://dlang.org/blog/symmetry-autumn-of-code/



Typos
 "D programming lagnauge" (looks a bit french) : D
 "accept yor offer."


Thanks for corrections.


Great! Wish I was a student still : D.


Me too !  Kidding aside, if you would be interested in a job 
programming mostly or partly in D please see our website.  Lots 
of roles we haven't yet had time to post.





Re: Symmetry Autumn of Code

2018-07-14 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 14 July 2018 at 07:30:26 UTC, Joakim wrote:

On Saturday, 14 July 2018 at 06:02:37 UTC, Mike Parker wrote:
Thanks to the sponsorship of Symmetry Investments, the D 
Language Foundation is happy to announce the Symmetry Autumn 
of Code!


We're looking for three university students to hack on D this 
autumn, from September - January. We're also in search of 
potential mentors and ideas for student projects. Head to the 
Symmetry Autumn of Code page for the details.


Spread the word!

https://dlang.org/blog/symmetry-autumn-of-code/


"join us" for
"submit an application" -> apply (confusing otherwise)

Maybe sum up and make clear that each student can earn between 
$3000-4000, instead of capped at $1k.


Why limit it to students? If the goal is to have a youth 
injection, just use an age limit- say 18-25- I see no reason 
for the stupid college bias.


Hi Joakim.

Thanks for suggestions.

I don't know what legal aspects there are relating to targeting 
age in different countries.  We are definitely targeting people 
earlier in their careers.  I agree with you that talent isn't 
only found amongst students, and I've in the past hired someone 
that didn't even finish high school and has gone on to do good 
work for the D community.  So as far as Symmetry goes we are very 
open to unusual talent.  A degree is just one piece of 
interesting information.


https://symmetryinvestments.com/careers/

There's quite a lot of work involved in organising something like 
this, and I'm very grateful to the D Foundation for doing such an 
excellent job.


We can refine this for next year, but I wanted to make a start.


Laeeth


Re: dpp now compiles julia.h headers

2018-07-13 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 13 July 2018 at 19:42:56 UTC, bachmeier wrote:

On Friday, 13 July 2018 at 19:02:56 UTC, Laeeth Isharc wrote:
Atila Neves' d++ now compiles julia.h.  Modulo bugs this makes 
it possible to embed Julia in D (and probably the other way 
around, but I have not tried).


https://github.com/kaleidicassociates/juliad


This is great news for me. A lot of new Julia code is being 
written by economists. I was going to work on this once I had a 
block of time.


Glad to return the favour.  We started using embedr to call R 
libraries from D - thanks for that.


I guess the next stage would be to work on autowrapping Julia -> 
D and viceversa.


dpp now compiles julia.h headers

2018-07-13 Thread Laeeth Isharc via Digitalmars-d-announce
Atila Neves' d++ now compiles julia.h.  Modulo bugs this makes it 
possible to embed Julia in D (and probably the other way around, 
but I have not tried).


https://github.com/kaleidicassociates/juliad



Symmetry Investments is recruiting developers in London and Hong Kong

2018-05-22 Thread Laeeth Isharc via Digitalmars-d-announce

Hi.

Walter+Andrei said this was okay to post here since it relates to 
D.  This is for one role working with our analytics and research 
groups; more in the pipeline.  Feel free to ping me directly if 
you are involved with the community already.



Laeeth.

Symmetry

About Us:

At Symmetry Investments, we seek to engage in intelligent 
risk-taking to create value for our clients, partners and 
employees.


Symmetry Investments is a global investment company with offices 
in Hong Kong and London. We have been in business since 2014 
after successfully spinning off from a major New York-based hedge 
fund. Currently we have about 110 full time employees and manage 
approximately US$4.2 billion of capital.


We derive our edge from our capacity to generate Win-Wins – in 
the broadest sense. Win-Win is our fundamental ethical and 
strategic principle. By generating Win-Wins, we can create unique 
solutions that reconcile perspectives that are usually seen as 
incompatible or opposites, and encompass the best that each side 
has to offer. We integrate fixed-income arbitrage with global 
macro strategies in a novel way. We invent and develop technology 
that focuses on the potential of human-machine integration. We 
build systems where machines do what they do best, supporting 
people to do what people do best. We are creating a collaborative 
meritocracy: a culture where individual contribution serves both 
personal and collective goals - and is rewarded accordingly. We 
value both ownership thinking AND cooperative team spirit, 
self-realization AND community.




D/C++ Quantitative Developer

This is an outstanding opportunity for the right person in terms 
of the intrinsic challenges of the role, the responsibility, the 
exposure to senior management, the opportunity to shape the 
development of something new, and over time the compensation.


Whilst we are a commercial enterprise, we highly value deep 
technical expertise and the cultivation of craft. You will be 
working closely with the Partner in charge of technology, who is 
a contributor to the open source community and a change agent for 
adopting modern development practices within the company.


https://github.com/symmetryinvestments/overview
https://github.com/atilaneves/dpp
https://dlang.org/blog/2017/05/31/project-highlight-excel-d/
https://github.com/libmir/mir-algorithm


As a D/C++ Quantitative developer you will work closely with the 
analytics and research groups to develop analytics and tools to 
support the investment and research processes of Symmetry.



Hard Requirements:

We are looking for mature hackers with a moral compass and sense 
of responsibility who have kept their imaginativeness. We value 
interest and capabilities as much as formal experience. Academic 
credentials are not a requirement if you can demonstrate 
outstanding capabilities, but for this role you should have a 
strong knowledge of quantitative techniques and computer science 
- data structures and algorithms.  You should also have strong 
knowledge of declarative programming.


You should be comfortable with the finer points of D and C++, and 
you should be ready and able to go deep when necessary to 
identify and address the root cause of problems.  You are able to 
write and develop domain-specific languages where they are an 
appropriate solution to a business challenge.


You will be working in a creative, often less-structured 
environment, with a high degree of autonomy to implement 
solutions. You are comfortable asking for help when you need it. 
You are capable of accepting direction should the longer-term 
strategic goals of the firm favour a particular solution fit.


You are able to communicate both at the level of ideas and 
concretely either in writing or in person/by telephone. The 
ability to be diplomatic is valuable, but not absolutely required.


You have a pragmatic devotion to excellence: the ability to 
recognize and evaluate interim solutions, while not being 
satisfied about retaining a hack in the long run.  You should 
recognise the costs of boilerplate and appreciate the aesthetic 
and commercial benefits of designs that involve writing as little 
code as possible.  You should care deeply about design and code 
quality, and recognise that performance matters more often than 
not.


You are able to think about problems in a generic, high-level way 
AND pragmatically use common sense. You can think associatively 
and hold a complex mental picture in your head as well as work 
sequentially.


An ability to think clearly and to act decisively in occasional 
high-pressure moments is desirable.



Soft Requirements:

Knowledge of the below will be helpful:

Languages: 5 years or more experience with D and C++; Python 
and Haskell or Ocaml



Location:

We currently work with certain remote developers as consultants.  
We view remote work as a way to collaborate with outstanding 
talent beyond the locations where we 

Re: autowrap v0.0.1 - Automatically wrap existing D code for use in Python and Excel

2018-05-13 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 13 May 2018 at 16:23:49 UTC, Nikos wrote:
I'm trying to wrap drepl 
(https://github.com/dlang-community/drepl)


My dub.sdl files is


import autowrap.python;
mixin(
   wrapAll(
   LibraryName("drepl"),
   Modules("drepl.interpreter"),
   )
);


I also flagged `export` the interpreter function

export Interpreter!Engine interpreter(Engine)(return scope 
Engine e) if (isEngine!Engine)

{
   // workaround Issue 18540
   return Interpreter!Engine(() @trusted { return move(e); 
}());

}


I build the library with python35, but when I import it from 
python idle, I cannot access the `interpreter` function at all.
I have the feeling I miss something essential here, but I don't 
know what it is.

Any ideas?


Eg turn this into a function and try wrapping this instead:

auto intp = interpreter(dmdEngine());





Re: autowrap v0.0.1 - Automatically wrap existing D code for use in Python and Excel

2018-05-10 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 10 May 2018 at 19:50:40 UTC, Nikos wrote:

In my dub.sdl file I have


configuration "python35" {
 subConfiguration "autowrap" "python35"
}


and I run


dub build --config=python35


which still tries to find python36. Why doesn't it look for 3.5?


Hi.  On my phone so can't copy paste.  Edit your dub.sdl under 
the python35 subconfiguration and change python 36 to python35.


Re: A bit more Emscripten

2018-05-10 Thread Laeeth Isharc via Digitalmars-d-announce
On Thursday, 10 May 2018 at 08:32:07 UTC, Vladimir Panteleev 
wrote:
On Tuesday, 8 May 2018 at 08:53:36 UTC, Vladimir Panteleev 
wrote:

https://github.com/CyberShadow/dscripten-tools


Progress update:

- std.stdio.writeln() works
- Using a D main() works (though unittests and static 
constructors still don't)

- WebAssembly output works!
- std.allocator works (at least, Mallocator + building-blocks 
do)


Very cool, Vladimir.  When I get time we will try to see if it's 
useful for some internal prototype tools.


Re: A bit more Emscripten

2018-05-08 Thread Laeeth Isharc via Digitalmars-d-announce

On Tuesday, 8 May 2018 at 18:44:06 UTC, Vladimir Panteleev wrote:

On Tuesday, 8 May 2018 at 09:51:11 UTC, Mike Franklin wrote:
I've been recently assigned the task of building a web-based 
Ladder Logic editor/compiler 
(https://en.wikipedia.org/wiki/Ladder_logic). This would not 
be a short-lived application, however.


Hmm, sounds like this would be an interactive application that 
would need access to the HTML DOM. Currently, this isn't 
directly possible - when running in an asm.js VM, there is no D 
type to represent a JavaScript object. It is possible to call 
out to / eval JavaScript, though, so perhaps it could be 
possible using a shim, where a JavaScript array holds 
JavaScript/DOM objects, and D refers to them by index.


Maybe we could port something like this to D.  Or wait till 
someday dpp can #include the STL.


https://github.com/mbasso/asm-dom/blob/master/README.md



Re: Announcing Mecca

2018-05-04 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 4 May 2018 at 05:23:51 UTC, Shachar Shemesh wrote:

Hello everybody,

I am very happy to announce that Mecca version 0.0.1 (sorry, no 
more zeros than that) is now officially available. You can get 
the source code at https://github.com/weka-io/mecca. The API 
documentation is at https://weka-io.github.com/mecca/docs.


[...]


https://www.reddit.com/r/programming/comments/8gxrkg/wekaio_open_sources_mecca_dlang_library_for_nogc?sort=new


Re: autowrap v0.0.1 - Automatically wrap existing D code for use in Python and Excel

2018-04-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 18 April 2018 at 15:28:07 UTC, Atila Neves wrote:

http://code.dlang.org/packages/autowrap

This came out of the need at work to take existing D code and 
make it available for both Excel and Python.


Both pyd and excel-d make the reasonable assumption that one is 
using them to write code specifically for those environments. 
That breaks when there's existing production D code one wants 
to wrap.




https://www.reddit.com/r/programming/comments/8eb12m/autowrap_v001_automatically_wrap_existing_d_code/


Re: Who says we can't call C++ constructors?

2018-04-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 21 April 2018 at 12:41:02 UTC, Atila Neves wrote:

From https://dlang.org/spec/cpp_interface.html:

"C++ constructors, copy constructors, move constructors and 
destructors cannot be called directly in D code".


O RLY?
Atila


https://www.reddit.com/r/programming/comments/8eat5o/calling_c_constructors_from_d/
https://github.com/atilaneves/dpp


Re: Vision document for H1 2018

2018-03-11 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 11 March 2018 at 19:58:51 UTC, rumbu wrote:

On Sunday, 11 March 2018 at 17:15:28 UTC, Seb wrote:

[...]


Yes, I'm the typical lazy convenient Windows user scared of the 
terminal window.



[...]


I am happy for Posix users. Theoretically the process is the 
same on Windows.



[...]


This will need Linux subsystem as a Windows feature installed. 
Bash scripts do not work on Windows. Or other third party 
applications that are not listed as prerequisites on wiki.



[...]


make -fwin32.mak release
Error: don't know how to make 'release'

Ok, let's skip this, make it without "release".

Now test it:

cd test
make all -j8
Command error: undefined switch '-j8'


Why are you adding -j8 ? Does it say to do so in the instructions 
? Try without it.  (I can't test here as typing from my phone).




Re: Vision document for H1 2018

2018-03-11 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 11 March 2018 at 07:59:53 UTC, rumbu wrote:

On Sunday, 11 March 2018 at 01:10:28 UTC, psychoticRabbit wrote:

On Sunday, 11 March 2018 at 00:36:19 UTC, Dylan Graham wrote:


And personally, depending on the problem, C# is better to 
program in than D. I still don't know why C# programmers are 
willing to give up C# and prefer to use D.

C# is vastly surperior for what it does.



Because, even the language creators seem to not recognize this, 
D looks like C# with *native compilation*, the syntax is 95% 
identical. Basically, if my source code doesn't use any .NET 
framework function, it will compile successfully with dmd 
without any (major) change.


I suppose that every C# programmer is enthusiastic on the first 
contact with the D language, but fails to keep his enthusiasm 
when he sees Phobos. C# programmer's mind is locked in the OOP 
world and Phobos looks like a mess from his point of view.


The problem is that D stagnates and in the same time C# 
evolves. Sometimes I feel like the C# language team is using D 
as inspiration for the new features, starting with C# 7.0, a 
lot of D concepts were introduced in the language: local 
functions, '_' as digit separator, binary literals, ref 
returns, tuples, templates, immutability. Guess what the next 
version of C# has on the table: slices.


In the same time, D delegates new features (and sometime 
existing ones) to library implementation, instead of assume 
them in the language syntax.


My opinion is that the day when C# will compile to native (on 
any platform), the C# developer interest in D will drop 
instantly.


It's a good thing not bad that other languages are inspired by 
what works.  Languages aren't in a vicious battle to the death, a 
Hobbesian war of all against all.  If C# gets better, that's 
great!


I don't think D is stagnating at all - on the contrary, it's 
amazing to see the ecosystem flourishing, no matter where you 
look - documentation, adoption, libraries, commercial adoption.


I think it's reasonable to disagree with the strategic decision 
made to move capabilities from compiler to libraries.  But you 
really have to make an argument about why you disagree if you are 
you expect to be persuasive because there is a thought-through 
argument for the choices made, which I am sure you must be 
familiar with.


I don't think it matters much whether you are right about what 
happens to C# programmer interest in D dies as soon as C# native 
cross-platform is ready because D is quite an ambitious language 
and doesn't need to depend on adoption from any one community to 
continue growing at an impressive rate.  As it happens though, as 
an empirical matter I doubt it.


C# slices look great.  I wanted to use them for generating 
wrappers for our analytics.  Not that easy for that purpose, from 
what I could see.  Looks like the primitives are stack only, and 
I tried to figure out how to use them elsewhere and gave up 
because it wasn't that easy.


If Phobos looks like a mess to C# programmers, so much the worse 
for C# programmers.  However I doubt they this is true in the 
general case.  It's better in many ways, but different and 
unfamiliar and everything unfamiliar is disconcerting in the 
beginning.









Re: Vision document for H1 2018

2018-03-11 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 11 March 2018 at 16:15:22 UTC, rumbu wrote:

On Sunday, 11 March 2018 at 14:37:28 UTC, bachmeier wrote:
And this clarifies the source of your confusion. The D 
programming language is an open source project, not a 
for-profit company. D is not the language you're looking for.


There are 3 years since C# is also open source project. Last 
week 72 pull requests form 24 contributors were merged on 
~master. And this is only for Roslyn (the C# compiler).


The difference (at least for me) is that contributing to C# is 
a no-brainer. Contributing to D needs an advanced degree in 
computer science. Using the information on the D wiki didn't 
helped me until now to successfully compile and test a fresh 
copy of dmd or phobos.


Funnily enough, becoming a significant contributor to the 
ecosystem - compiler or Phobos - demonstrably does not require 
even a complete graduation from high school or any industrial 
programming experience.  I know of what I speak, but I don't say 
who as it's not for me to say.


I was in Munich over new year and I asked someone else who has 
been a star contributor how he got involved.  It was really easy 
for him to start contributing, so he did.  But different people 
find different things easy.


You don't need to have subsystem for Linux to use bash.  Just the 
standard git client for Windows is enough.


I agree the Windows experience could be easier upfront.  Still, 
it's better than it used to be and next year it will be better 
again.


You can't really compare the C# ecosystem to the D ecosystem 
because they are organised around different principles.  Yes, the 
pain is upfront with D, and it's not for everyone.  However on 
the basis of rational calculation the pain in learning something 
new is a small part of the total cost of the technology choice 
and for some people by far not the most relevant question.


And it's an advantage in hiring because the D community filters 
for people who have a tolerance for discomfort upfront.


It would be wonderful to be able to wave a wand and make all of 
life's little frustrations disappear.  But in my experience, 
that's not what is possible - one picks from the choices 
available and the new ones one thinks up.  People have a tendency 
to think that leadership has more power to just change things 
then is actually the case.


I'm going to be building standard developer images from scratch 
programmatically.  Transform froma Windows  ISO into  a VM 
image.Maybe I could open source those scripts and then it's 
easier to get to the bottom of any install and build problems and 
one can replicate difficulties.





Re: excel-d v0.2.16 - now with more @Async

2017-12-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 22 December 2017 at 22:08:23 UTC, Mengu wrote:

On Friday, 22 December 2017 at 00:41:31 UTC, Atila Neves wrote:
excel-d lets you write plain D code that can be run from Excel 
unmodified via the magic of compile-time reflection.


[...]


can we use excel-d with office for mac?


I don't think so but I am not familiar with the Excel API on Mac 
so it's possible not too many changes required.  Pull requests 
welcomed :)




Re: London senior DevOps job and two London [D-ish] developer roles

2017-10-20 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 20 October 2017 at 09:11:17 UTC, Arjan wrote:
On Thursday, 19 October 2017 at 20:01:20 UTC, Laeeth Isharc 
wrote:

Hi.

Symmetry Investments is looking to hire ...
Please feel free to drop me a line if you're interested or 
know of someone who might be - for this role or for the others.


How would one contact you?


devops.hiring

at

symmetryinvestments.io


London senior DevOps job and two London [D-ish] developer roles

2017-10-19 Thread Laeeth Isharc via Digitalmars-d-announce

Hi.

Symmetry Investments is looking to hire one senior platform 
engineering / devops person in London (and also looking for two 
developers - one for building native/Jupyter GUI front-end of 
tools, and the other to work with our research team).


So far, I've only had time to write and post the job description 
for the devops role (I'll do the others shortly).  You can see 
that one here:


https://jobs.github.com/positions/8e98eac8-b504-11e7-9da8-0737a3dcef18

We would consider someone with less formal experience/seniority.

Some stuff about the firm here:
  http://symmetryinvestments.com/about-us/
  https://stackoverflow.com/jobs/companies/symmetry-investments

Please feel free to drop me a line if you're interested or know 
of someone who might be - for this role or for the others.


How much of this work can be in D?  It very much depends on the 
person, and what's sensible for the job.  Potentially quite a 
lot, probably not all of it.


Thanks.



Laeeth.


Re: Netflix opensources its first D library: Vectorflow

2017-08-02 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 3 August 2017 at 03:46:11 UTC, Matt wrote:
On Wednesday, 2 August 2017 at 21:31:19 UTC, Walter Bright 
wrote:

https://www.reddit.com/r/programming/comments/6r6dwp/netflix_opensources_its_first_d_library_vectorflow/


Speakng of D in data science (where I think it can get 
traction), is there a standardized linear algebra library in D? 
Perhaps some hooks to Eigen?


I saw a few upstarts LA libraries, but none that I would 
consider "the one to use in D", like numpy in python or Eigen 
in C++


We're using D in finance.  D libraries are far from the maturity 
of Python, but they are developing quickly.


https://github.com/kaleidicassociates/lubeck Library we have 
open-sourced

https://github.com/libmir/mir-algorithm Mir library we sponsor

Other mir libraries:
https://github.com/libmir/mir-lapack
https://github.com/libmir/mir-blas
https://github.com/libmir/lapack
https://github.com/DlangScience/cblas

Performance matters:
http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html




Re: Update to Bare Metal STM32F4 (ARM Cortex-M4) LCD Demo Proof of Concept

2017-07-26 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 20 July 2017 at 12:23:31 UTC, Mike wrote:
A few years ago I created a bare metal demo on an ARM Cortex-M4 
microcontroller entirely in D.  It was just a demonstration 
that one could do bare metal programming for microcontrollers 
in D without any dependencies on C or assembly.  It was also a 
proof of some ideas I had about leveraging compile-time 
features of D to generate highly-optimized code (both small and 
fast) for these resource constrained systems.  I hit a wall, 
however, with Issue 14758[0], and ultimately abandoned D for 
other alternatives.


Well, that issue was recently fixed in GDC [1].  In addition, 
he GDC developers did some work to reduce the number of phony 
stubs one had to add to the runtime to get a build [2], removed 
the "shared is volatile" hack, and implemented the 
`volatileLoad/Store` intrinsics so I no longer need to do 
volatile access in assembly.  So, I decided to give it another 
try, and updated that demo. You can see the results at 
https://github.com/JinShil/stm32f42_discovery_demo


Congratulations, Mike.

https://www.reddit.com/r/programming/comments/6pn31c/d_on_bare_metal_stm32f4_redux/

Could someone post to Hacker News?  I don't have enough rep for 
it to propagate.


Re: static foreach is now in github master

2017-07-26 Thread Laeeth Isharc via Digitalmars-d-announce
On Monday, 17 July 2017 at 18:14:35 UTC, Andrei Alexandrescu 
wrote:
For those who want to play with our new static foreach feature 
and are willing to take the steps to building their own dmd, 
the feature is now merged in master: 
https://github.com/dlang/dmd/pull/6760


Happy hacking!

Andrei


Maybe good subject for an AMA (though not many upvoted so far). 
It's pretty cool that it was added on an afternoon during the 
hackathon.


 
https://www.reddit.com/r/programming/comments/6pn257/static_foreach_added_to_d_compiler_nightly/


Could someone post to Hacker News - I don't have enough rep there 
for stories to propagate.


Can always post another story later on explaining the practical 
benefits of static foreach (good topic for a D blog post) - 
marketing is about repetition.





Re: Dynamic binding to the Mono runtime API

2017-06-03 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 3 June 2017 at 17:30:05 UTC, Jakub Szewczyk wrote:
Mono runtime is a cross-platform, open-source alternative to 
Microsoft's .NET framework [1], and it can be embedded in other 
applications as a "scripting" VM, but with JIT-compilation 
enhanced performance and support of many languages such as C#, 
F# or IronPython [2].
It provides a C API, so I've bound it to D as a Derelict-based 
project, available at https://github.com/kubasz/derelict-mono, 
and as a DUB package 
(http://code.dlang.org/packages/derelict-mono). It currently 
wraps the Mono 5.0 API.
There's also a simple example of calling a C# main from D code, 
and C# code calling a native function implemented in D.


PS: Because I don't own a Mac I have no idea what the correct 
paths to the Mono shared library are, so it'd be great if 
someone could post/create a PR of them.


[1] http://www.mono-project.com/
[2] 
http://www.mono-project.com/docs/advanced/embedding/scripting/



This is very cool - thank you for doing this.  It could prove 
very helpful.


Have you thought of/any interest in looking at automatically 
generating C# wrapper and bindings for D code?  (I'm interested 
myself mostly in nested templated structs/arrays rather than 
classes).  It may not be relevant for you, but if it is please 
drop me an email on laeeth


... at kaleidic.io

Thanks.


Laeeth.



Re: D for Android beta

2017-06-01 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 1 June 2017 at 19:31:28 UTC, Joakim wrote:
The beta release of ldc 1.3, the llvm-based D compiler, is now 
out:


https://github.com/joakim-noah/android/releases

It is accompanied by a non-trivial sample app from the Android 
NDK, ported from C++ to about 1.2 klocs of D: the classic Utah 
Teapot (https://en.wikipedia.org/wiki/Utah_teapot), updated 
with mobile touch controls.  This app also demonstrates calling 
Java functions from your D code through JNI, though most of it 
is written in D.


There are two builds of ldc, a cross-compiler that you can use 
from a linux/x64 shell to compile to Android/ARM, and a native 
compiler that you can run on your Android device itself.  As I 
pointed out last year, not only is ldc a large mixed D/C++ 
codebase that just worked on ARM, but it is possible to build 
arbitrarily large Android apps on your Android device itself, a 
first for any mobile platform:


http://forum.dlang.org/thread/ovkhtsdzlfzqrqneo...@forum.dlang.org

This is the way the next generation of coders will get into 
coding, by tinkering with their Android devices like we did 
with Macs and PCs decades ago, and D is one the few languages 
that is already there.


I will write up instructions on how to write an Android app in 
D _on_ your Android device by using ldc and the Termux app, and 
get ldc into the Termux packages, a package repository for 
Android:


https://play.google.com/store/apps/details?id=com.termux=en


Congratulations, Joakim!
https://www.reddit.com/r/programming/comments/6eqv46/write_mixed_dc_android_apps_even_build_them/
and news.ycombinator.com

Looking forward to termux.




Re: Dconf - lightning talk: Excel add-ins in D

2017-05-17 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 17 May 2017 at 21:17:37 UTC, jmh530 wrote:

On Wednesday, 17 May 2017 at 20:58:05 UTC, Laeeth Isharc wrote:

https://www.reddit.com/r/programming/comments/6brj2x/dconf_lighting_talk_excel_addins_in_d/?ref=share_source=link

(submitted to Hacker News - news.ycombinator.com too)


The header says it's for the lightning talk on excel add-ins, 
but the link goes to Walter's talk.


For me the link goes to the lightning talk, but Reddit displays 
inline Walter's talk.  Strange.





Dconf - lightning talk: Excel add-ins in D

2017-05-17 Thread Laeeth Isharc via Digitalmars-d-announce

https://www.reddit.com/r/programming/comments/6brj2x/dconf_lighting_talk_excel_addins_in_d/?ref=share_source=link

(submitted to Hacker News - news.ycombinator.com too)



Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-04-24 Thread Laeeth Isharc via Digitalmars-d-announce

C++ example for XLW:

 LPXLFOPER EXCEL_EXPORT xlStats(LPXLFOPER inTargetRange) {
EXCEL_BEGIN;
XlfOper xlTargetRange(inTargetRange);

// Temporary variables.
double averageTmp = 0.0;
double varianceTmp = 0.0;

// Iterate over the cells in the incoming matrix.
for (RW i = 0; i < xlTargetRange.rows(); ++i)
{
for (RW j = 0; j < xlTargetRange.columns(); ++j)
{
// sums the values.
double value(xlTargetRange(i,j).AsDouble());
averageTmp += value;
// sums the squared values.
varianceTmp += value * value;
}
}
size_t popSize = xlTargetRange.rows() * 
xlTargetRange.columns();


// avoid divide by zero
if(popSize == 0)
{
THROW_XLW("Can't calculate stats on empty range");
}

// Initialization of the results Array oper.
XlfOper result(1, 2);
// compute average.
double average = averageTmp / popSize;
result(0, 0) = average;
// compute variance
result(0, 1) = varianceTmp / popSize - average * average;
return result;
EXCEL_END;
}

D example (didn't get time to test, but something like this) is a 
little bit more concise! :

import std.algorithm:map,sum;
import std.range:front;

@Register(ArgumentText("input range to calculate statistics 
for"),

HelpTopic("excel-d"),
FunctionHelp("calculates mean and variance for input 
array"),

ArgumentHelp(["input range to calculate statistics for"]))
auto xlStats(double[][] inTargetRange)
{
auto numCells = (inTargetRange.length > 0) ?
 inTargetRange.length * 
inTargetRange.front.length : 0;
auto means = inTargetRange.map!(row => row.sum).sum / 
numCells;
auto sumSquares = inTargetRange.map!( row => 
row.map!(cell => cell*cell).sum).sum;

return [means, sumSquares / numCells - means];
}




Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-04-24 Thread Laeeth Isharc via Digitalmars-d-announce

On Monday, 24 April 2017 at 21:59:34 UTC, Atila Neves wrote:

Now with more `@nogc`. Before, this worked fine:

double func(double d) @nogc nothrow { return d * 2; }

The function is `@nogc`, the wrapper function (i.e. the 
function that Excel actually calls) is also `@nogc` via the 
magic of compile-time reflection. So far, so good. But what if 
you want to return a string or an array back to Excel. Oh, oh...


Enter the `@Dispose` UDA:

And Bob's your uncle.

Atila


Very nice.
On reddit here since it's a pretty nice example of how you don't 
need to use dark magic to write code in D without depending on 
the GC:

https://www.reddit.com/r/programming/comments/67dogy/writing_excel_addins_in_d_without_using_the/


Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-03-22 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 22 March 2017 at 02:30:50 UTC, Saurabh Das wrote:

On Monday, 20 March 2017 at 20:09:58 UTC, Atila Neves wrote:

http://code.dlang.org/packages/excel-d

This dub package allows D code to be called from Excel. It 
uses compile-time reflection to register the user's code in an 
XLL (a DLL loaded by Excel) so no boilerplate is necessary. 
Not even `DllMain`! It works like this:


[...]


This is too good. We already use a cobbled-together Excel 
runner type thing. It will be so much better to use excel-d.


Thanks so much Atila!


Glad it's helpful.  Pull requests welcomed :)




Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-03-21 Thread Laeeth Isharc via Digitalmars-d-announce

On Tuesday, 21 March 2017 at 13:59:56 UTC, Jacob Carlborg wrote:

On 2017-03-20 21:09, Atila Neves wrote:

http://code.dlang.org/packages/excel-d

This dub package allows D code to be called from Excel. It uses
compile-time reflection to register the user's code in an XLL 
(a DLL
loaded by Excel) so no boilerplate is necessary. Not even 
`DllMain`! It

works like this:


It's cool that this is possible to do in D, but I feel sorry 
for anyone that has a reason :)


It's the current year, but for the time being for many 
practitioners in the investment world there is no better 
alternative to using a spreadsheet as one window onto server side 
processes used for certain things.  Not the only window.  I'd 
personally be thrilled to say goodbye both to spreadsheets and to 
Windows, but one also has to be somewhat pragmatic.


And actually it's by far better to be able to write things for 
spreadsheets in D quickly versus the conceivable alternatives...!





Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-03-20 Thread Laeeth Isharc via Digitalmars-d-announce
On Tuesday, 21 March 2017 at 00:25:46 UTC, Steven Schveighoffer 
wrote:

On 3/20/17 4:09 PM, Atila Neves wrote:

http://code.dlang.org/packages/excel-d

This dub package allows D code to be called from Excel. It uses
compile-time reflection to register the user's code in an XLL 
(a DLL
loaded by Excel) so no boilerplate is necessary. Not even 
`DllMain`! It

works like this:


If I wanted to replace our horrifying web queries from Excel 
with this, I'm assuming I could? That would be awesome.


-Steve


so calling curl c bindings should definitely work, or there might 
be some nogc curl type library on code.dlang.org.





Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-03-20 Thread Laeeth Isharc via Digitalmars-d-announce

On Monday, 20 March 2017 at 20:32:20 UTC, Stefan Koch wrote:

On Monday, 20 March 2017 at 20:09:58 UTC, Atila Neves wrote:

http://code.dlang.org/packages/excel-d

This dub package allows D code to be called from Excel. It 
uses compile-time reflection to register the user's code in an 
XLL (a DLL loaded by Excel) so no boilerplate is necessary. 
Not even `DllMain`! It works like this:


[...]


Ah Interesting to see how this turned out.


Thanks for your help on this, Stefan.  I'll publish Bloomberg API 
too when we have had time to tidy it up a bit more.


Reddit link here:

https://www.reddit.com/r/programming/comments/60koa6/dlang_wrapper_to_write_excel_functions_ctfe_magic/


Re: excel-d v0.0.1 - D API to write functions callable from Excel

2017-03-20 Thread Laeeth Isharc via Digitalmars-d-announce
On Tuesday, 21 March 2017 at 00:25:46 UTC, Steven Schveighoffer 
wrote:

On 3/20/17 4:09 PM, Atila Neves wrote:

http://code.dlang.org/packages/excel-d

This dub package allows D code to be called from Excel. It uses
compile-time reflection to register the user's code in an XLL 
(a DLL
loaded by Excel) so no boilerplate is necessary. Not even 
`DllMain`! It

works like this:


If I wanted to replace our horrifying web queries from Excel 
with this, I'm assuming I could? That would be awesome.


-Steve


Yes - you could, provided the function is nogc.  Have done some 
work on using std.experimental.allocator (well I had a working 
version, but was trimmed a bit), and will publish a revised 
version when we get time, but it wouldn't be hard to add directly 
yourself.  PRs welcome.  If you allocate memory just make sure 
that you hook into  the xlautofree callback (or whatever it's 
called - long time since I touched this) to free it.


I try to keep the excel functions as simple as possible, because 
I don't want to crash a trader's spreadsheet.  So we end up with 
a little local server running as a windows service that does the 
work.  (We use nanomsg tcp/ip on localhost as struggled with IPC 
on windows, but you could talk to it however is convenient).


Look forward to catching up at dconf in Berlin.  Atila will be 
there too (and Stefan of course).  I'm staying at the Beethoven 
too.



Laeeth.


Re: DConf 2017 Hotel - book now!

2017-03-20 Thread Laeeth Isharc via Digitalmars-d-announce
On Thursday, 16 March 2017 at 19:35:31 UTC, Steven Schveighoffer 
wrote:

On 3/14/17 12:39 PM, Bastiaan Veelo wrote:
On Saturday, 4 March 2017 at 20:08:39 UTC, Vladimir Panteleev 
wrote:
On Thursday, 2 March 2017 at 02:24:50 UTC, Walter Bright 
wrote:

http://www.ibis.com/gb/hotel-5694-ibis-berlin-neukoelln/index.shtml

Last year, some people booked late and it was full and they 
had to

stay at another hotel.


Aaand it's sold out. 2 months before the conference. Wow :)


I just booked Erlanger Hof. It too is filling up fast.


That was booked when I tried. Anyone else staying at the Hotel 
Ludwig Van Beethoven (just booked that one)?


-Steve


I'm there too.  Laeeth.


Re: Alexa Skill written in D

2017-02-11 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 11 January 2017 at 12:16:06 UTC, extrawurst wrote:
On Tuesday, 10 January 2017 at 11:46:22 UTC, Laeeth Isharc 
wrote:

On Saturday, 7 January 2017 at 13:17:35 UTC, extrawurst wrote:


Thank you for doing this - really happy about it.  A perfect 
open source moment - I was wondering about how to go about 
getting Alexa working.  But I had shared the AWS Lambda stuff 
which proved useful for you, and now you solved the problem 
for me and helped others on top.



Laeeth.


Hi Laeeth, thanks again for your post about aws lambda + D - 
wouldn't have thought about this whole thing otherwise.


I wanted to ask you if you thought about using another platform 
but nodejs wrap the D exe in lambda. They support java and C# 
aswell. I was wondering if it is a performance difference to 
use them instead ?!

Looking forward to your input.

Cheers,
Stephan


Hi Stephan.

I think at the time C# was not possible, and not sure if java 
was.  I don't know those languages so well, but if someone would 
like to try and see if it makes a difference, I would be happy to 
grant them rights to co-maintain the repo and add those as 
options.


If I recall right, there shouldn't be a performance difference - 
just a question of latency to start.  Will Java or C# be better 
in those respects given time needed to start the VM?



Laeeth.



Re: Alexa Skill written in D

2017-01-10 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 7 January 2017 at 13:17:35 UTC, extrawurst wrote:

Hi guys,
the last 2 weeks I jumped on a new toy project: An Alexa Skill 
written in D.


It is a skill that allows me to voice control my TV receiver 
with commands like:



Alexa, ask Telly to go to standby
Alexa, ask Telly what is currently running


The project and all the source code sits on github:
https://github.com/Extrawurst/alexa-openwebif

I created two new dub libraries that this app uses:
https://github.com/Extrawurst/openwebif-client-d
https://github.com/Extrawurst/alexa-skill-kit-d

*openwebif-client-d* is the REST api that my receiver speaks.
*alexa-skill-kit-d* is the base class and the types that amazon 
throws at when the user activated your skill.


you can find the blog post here:
http://blog.extrawurst.org/programming/dlang/alexa/2017/01/06/alexa-in-d.html

Feel free to share, to spread the word about using D for this 
fancy new tech.


~Stephan


Thank you for doing this - really happy about it.  A perfect open 
source moment - I was wondering about how to go about getting 
Alexa working.  But I had shared the AWS Lambda stuff which 
proved useful for you, and now you solved the problem for me and 
helped others on top.



Laeeth.


Re: Facebook is using D in production starting today

2016-06-05 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 4 June 2016 at 00:41:33 UTC, Meta wrote:
On Friday, 11 October 2013 at 00:36:12 UTC, Andrei Alexandrescu 
wrote:
Today I committed the first 5112 lines of D code to Facebook's 
repository. The project is in heavy daily use at Facebook. 
Compared to the original version (written in C++) we've 
measured massive wins in all of source code size, build speed, 
and running speed.


In all likelihood we'll follow up with a blog post describing 
the process.



Andrei


Since this thread has been brought back to life anyway, does 
anyone know if Facebook is still using D now that Andrei has 
left?


Spoke quite recently to a chap still there and he said yes, they 
are.


Re: Adventures in D Programming

2016-05-13 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 12 May 2016 at 21:08:58 UTC, Matthias Klumpp wrote:
To elaborate a bit more on the version incompatibilities thing: 
E.g. me as a new user reads about std.concurrency.Generator, 
wants to use it, and it turns out that the standard library 
doesn't contain it yet (in GDC). Same for 
std.experimental.logger.

Okay, means I can't use these.


I haven't tried myself for these, but it might turn out to be not 
so much work just to copy the relevant files over and clean up 
the rough edges if you want to use these in GDC/LDC.  But I know 
that it's harder and a nuisance if you aren't that familiar with 
the language and just want to get your job done.


Then, I want to use D-YAML, which depends on std.stream. But 
std.stream is completely deprecated, with no clear path for me 
to see to replace it. That's really bad, and it also means I 
can't compile my code with making the use of deprecated stuff 
fail the compilation.


https://github.com/DigitalMars/undeaD/blob/master/src/undead/stream.d

You might want to submit a pull request so D-YAML depends on this 
(where removed parts of Phobos go to live) rather than std.stream.


That was by far the most frustrating things I experienced in D. 
So ideally the docs would be split for different Phobos 
versions, that would already be a great help. Then, when 
deprecating stuff, showing a thing that replaces it or the 
proper way to write code using it would also be really nice.


I agree.

It would actually be really awesome if Phobos wasn't tied to a 
compiler, and all D compilers which are standard-compliant 
could compile it. Then, one could assume that people have the 
most recent Phobos. But it looks like it will take a longer 
time to get there, if at all.


A matter of maturity and resources.  It's quite astonishing the 
value that the small number of people working on LDC and GDC have 
been able to create.  (DMD too, but there are more people).  
Maybe there ought to be a way to express concrete appreciation 
for their work.





Re: DlangUI on Android

2016-04-22 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 21 April 2016 at 13:28:18 UTC, Vadim Lopatin wrote:

I've implemented initial support of Android in DlangUI.


Congratulations, Vadim.

This is a very exciting development.  (And impressive in the 
'consequent' department, as the Germans say - you said you would 
have DlangUI ported to Android some weeks after the working 
compiler, and that's what you did!).


Might be useful for me to port some D code for internal 
enterprise apps to Android that currently runs on linux (I 
recognise how experimental it is, but I'm okay with that since 
mobile is just nice to have, and not yet necessary).


Will you be at dconf?


Re: Graylog Extended Log Format (GELF) for D

2016-04-15 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 9 April 2016 at 20:06:01 UTC, angel wrote:

But what about this ?
https://forum.dlang.org/thread/eryphpbznrrovjvxj...@forum.dlang.org


That arose out of a project that we are working on where it is 
convenient to be able to integrate with std.experimental.logger.  
Internal work that has been opensourced, rather than written with 
the primary target of open source, and if we had more time I 
would have suggested basing off Adil's work.  As it is, it was 
just a write from scratch by Ilya.  I thank Adil for making me 
aware of Graylog and Gelf format, as I wouldn't have known about 
it otherwise.


Main benefit for us is to be able to reap the benefits of 
std.experimental.logger - very easy to switch logging source, and 
I think runtime cost of trace statements should be zero if turned 
off.  Little fiddly state machines with a few things that need to 
be ironed out that only show up now and then, so writeflns and 
debugging in an IDE don't cut it.


Graylog is a bit of a monster that uses Mongo, elasticsearch and 
who knows what else - for some things might be easier to use the 
Gelf format with a D back end.  But it's a very nice way to think 
about the problem.


running D on AWS lambda

2016-03-13 Thread Laeeth Isharc via Digitalmars-d-announce

http://awslambda-d.readthedocs.org/
http://code.dlang.org/packages/awslambda_d
https://github.com/kaleidicpublic/awslambda_d


AWS Lambda is a 'compute service that runs your code in response 
to events and automatically manages the new compute resources for 
you, making it easy to build applications that respond quickly to 
new information'.


Current supported runtimes (at least when I wrote the code, some 
months back) were Javascript (node.js) and Java, but I wanted to 
be able to write scripts in D, since that's what I use for my 
existing work.


Re: nanomsg for Deimos collection

2016-02-28 Thread Laeeth Isharc via Digitalmars-d-announce
On Saturday, 27 February 2016 at 15:48:53 UTC, Ilya Yaroshenko 
wrote:

Hi all,

D interface to nanomsg library http://nanomsg.org/ was 
released. This bindings follows Deimos style. 90% of tests was 
ported to D.


github: https://github.com/9il/nanomsg
dub: http://code.dlang.org/packages/nanomsg

BTW, what should I do to include it to Deimos collection?
https://github.com/D-Programming-Deimos

See also https://github.com/Laeeth/d-nanomsg

Best regards,
Ilya


Nice work, Ilya.

I mentioned on the nanomsg gitter channel, but you might want to 
mention on the mailing list too (nanomsg.org then community), so 
it gets added to the list of bindings on the main page.


Re: Article: We're Overlooking A Key Part of C/C++ to D User Migration

2016-02-04 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 5 February 2016 at 05:40:35 UTC, Laeeth Isharc wrote:
On Wednesday, 3 February 2016 at 17:05:57 UTC, Nick Sabalausky 
wrote:
Something that's been on my mind for a few months, finally got 
around to a little write-up about it.


We're Overlooking A Key Part of C/C++ to D User Migration:

https://semitwist.com/articles/article/view/we-re-overlooking-a-key-part-of-c-c-d-user-migration


can SWIG be made efficient?


forget that - it's the wrong way around...


Re: Article: We're Overlooking A Key Part of C/C++ to D User Migration

2016-02-04 Thread Laeeth Isharc via Digitalmars-d-announce
On Wednesday, 3 February 2016 at 17:05:57 UTC, Nick Sabalausky 
wrote:
Something that's been on my mind for a few months, finally got 
around to a little write-up about it.


We're Overlooking A Key Part of C/C++ to D User Migration:

https://semitwist.com/articles/article/view/we-re-overlooking-a-key-part-of-c-c-d-user-migration


can SWIG be made efficient?


Re: Vision for the first semester of 2016

2016-01-27 Thread Laeeth Isharc via Digitalmars-d-announce
On Wednesday, 27 January 2016 at 09:15:27 UTC, Ola Fosheim 
Grøstad wrote:
On Wednesday, 27 January 2016 at 06:17:44 UTC, Laeeth Isharc 
wrote:
On Tuesday, 26 January 2016 at 22:48:23 UTC, Ola Fosheim 
Grøstad wrote:


I am not sure if that is the right motivation. Sounds like 
recipe for bloat. Good libraries evolve from being used in 
real applications. Many applications.


sayeth a low-level guy (if I understand correctly), which will 
certainly create a distinct perspective about what you would 
like to see in the standard library, and yet this may not be 
the right thing for the language as a whole.


I am both low-level and high level, but D's primary advantage 
is that it allows low level programming.


Surely, that is C's primary advantage!  The whole point of D is 
that it doesn't just have one primary advantage, and that is why 
the front page no longer describes it is as a systems language, 
even though it's approaching suitable as such.


fwiw, people that do use D on a serious scale have remarked 
that the richness of the standard library (even as it stands 
today) was a major advantage - in bioinformatics, at a London 
hedge fund, and I think AdRoll.


Do you consider Angular to be low level? It was used in 100s if 
not 1000s of applications, but was considered inadequate and 
scrapped in favour of Angular2. This is the typical pattern for 
libraries and frameworks.


I really don't see how this relates to the point at hand.  You 
seemed to suggest that the standard library should be small, and 
I pointed out that many serious users in industries that are 
likely to be key markets for D do say that they find what's 
provided in the standard library to be quite appealing.  Nothing 
lasts forever, and all is change - that's something I agree with. 
 But it doesn't seem to have much bearing on the decision about 
what to put in the standard library.  Your suggestions that 
because some cloud environments don't have a conventional file 
system, D perhaps shouldn't even have this in the standard 
library really seemed to me to be a reductio ad absurdum of your 
own argument.  Of course there will be lots there that one 
doesn't need and can't use.  But over time things that were once 
cutting edge become bog standard, and it makes sense to have 
coherence and convenience rather than to have to search out the 
best library for the purpose each time.




Re: Ever want to compile D on your Android phone? Well, now you can!

2016-01-27 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 27 January 2016 at 07:48:53 UTC, Joakim wrote:
On Wednesday, 27 January 2016 at 06:04:43 UTC, Laeeth Isharc 
wrote:

https://www.reddit.com/r/programming/comments/42w404/dlang_llvmbacked_compiler_alpha_release_for/


Thanks, I wondered if it had been posted, as it's the kind of 
oddity they might enjoy. :)


Currently 9th with 215 upvotes.

Just submitted to hacker news too.


Re: Ever want to compile D on your Android phone? Well, now you can!

2016-01-26 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 24 January 2016 at 15:12:30 UTC, Joakim wrote:
An alpha release of ldc, the llvm-based D compiler, for Android 
devices is now available.  It is best used with the excellent 
Termux app 
(https://play.google.com/store/apps/details?id=com.termux=en) and a bluetooth keyboard. ;) Updated test runners, that run most tests from the standard library on any Android device, are also available (results have been reported for everything from a TomTom BRIDGE GPS navigation device to a Huawei Watch):


https://github.com/joakim-noah/android/releases/tag/polish

You can install a test runner app or run a command-line binary.
 Please report your results in this thread in the ldc forum, 
which requires no registration, with the info and format 
requested there, particularly for Android 4.1 or earlier:


https://forum.dlang.org/thread/bafrkjfwmoyriyhmq...@forum.dlang.org

If you try out the native compiler, take a look at the README 
that comes with it for instructions.


If you have a D/OpenGL app you'd like to port to Android and 
submit to the Play Store, let me know if I can help with that 
process.


https://www.reddit.com/r/programming/comments/42w404/dlang_llvmbacked_compiler_alpha_release_for/


Re: Flipboard collection of D articles

2016-01-10 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 10 January 2016 at 10:48:39 UTC, florin wrote:

On Saturday, 9 January 2016 at 16:23:05 UTC, jamonahn wrote:

On Friday, 8 January 2016 at 08:43:52 UTC, florin wrote:
However as I'm programming less and less in D lately 
/@sunre/d-programming-language-e87f94iky


Florin


May I ask why / what language you are now using?  I just 
recently became a big fan of D, and just watched your 2014 
talk.  Is the network messaging framework still in use / 
maintenance?  Just getting to your github now.


Hi, I guess you got me confused :) While I did wish I'd at 
least attend a Dconf, I've never given a talk on D.


Most of my work is related to machine learning where there's no 
getting around C/C++ for CUDA and BLAS stuff. Also efficiency 
trumps pretty much everything in this field. However I am still 
very fond of D, it's the language that introduced me to generic 
programming.


Hi Florin.

What do you make of Ilya's proposal on BLAS?  What would you need 
to be able to use D there ?  Or is it tricky as you are working 
with other libraries on top of that ?


There are people here with private CUDA libraries that may be 
open sourced in time.  (I understand that in the meantime one 
needs to get stuff done).



Laeeth


Re: D runs on watchOS! and on Android Wear too!

2016-01-06 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 6 January 2016 at 17:35:07 UTC, Dan Olson wrote:

Laeeth Isharc  writes:

I think it is a good hijack!


Thanks..


Somebody should do a blog post about this (and how to get it 
to work step by step - it's easy when you know how, but the 
set of people that don't and would like to but will get stuck 
is quite large).


For watchOS, soon there will be a binary release of cross 
compiler with phobos and will have instructions like I have for 
the iOS release.


What is holding me up is I still am trying to decide how to 
manage multiple releases (iOS, tvOS, and watchOS) since the 
libraries are all different but the compiler is the same. It 
doesn't fit the mold but I'd like to have a single bin with 
multiple libs.


Yes can imagine it gets messy quickly yet is a lot of work to 
integrate.


I might have a commercial use for this in coming months (both 
on Android and watchOS).  Since it's an internal application 
the rough edges are of less concern to me than if one expects 
100,000+ users.


Laeeth, note that app store approval may be a ways off since 
they want to use their own LLVM to compile bitcode and I have 
patches not in official LLVM. If you only need to side load 
watchOS, then you will soon be good to go.


Appreciate the colour.  Side loading fine for now, and actual use 
is realistically some way off as I have a lot of other things to 
do as well.  I am in a funny business where the fewer the users I 
have the better (for x>=1) so my concerns are different from 
someone making a consumer app.


Wrappers for everything would help a lot (and then some 
tutorials) - I guess the Apple stuff is under way.


The D Objective-C interface is not in LDC yet and I think what 
is in dmd so far only supports a subset (instance method calls 
I think).  There are other ways, depending on what you need to 
do, but right know it seems best to do all the UI stuff in 
Swift or Objective-C and use D for everything else.


Yes - I haven't looked at Apple at all as I have too many 
computers already as it is and don't have a Mac.  I wonder if it 
is possible to implement something like what I understand Corona 
have done for C# in D: make a common layer for what can be shared 
so work involved in customisation for each platform is minimised.


I guess we are at a point now that the heavy lifting is done 
where some small success stories can inspire others to have a try 
and the ecosystem can grow.





Re: [OT] bitcoin donation

2015-11-24 Thread Laeeth Isharc via Digitalmars-d-announce

On Monday, 23 November 2015 at 14:02:30 UTC, Joakim wrote:
On Monday, 23 November 2015 at 12:11:36 UTC, Steven 
Schveighoffer wrote:
One could ask the same thing about any currency that isn't the 
one accepted at a store.


Sure, online is much less of a hassle, but it's still a little 
time to sign up and administer.  Is that much of Ali's time 
worth spending for at least three donations, likely more?  I 
bet it would be.


I looked with a tinge of fascination at what bitcoin was a 
while ago. I think there is a natural averse reaction to 
something that is valuable but that you cannot understand.

--snip--
I know bitcoin has real math and genius behind it, and this is 
a silly example, but for those who do not understand how it 
actually works (including myself), it seems very similar in 
nature. Dollars (or whatever local currency you use) are 
understandable, and generally accepted at places where I shop. 
It's easy to see how one cannot duplicate them without 
evidence of doing so (the fundamental characteristic of 
currency). Online bits don't seem so uncopyable.


I'm by no means steeped in the tech, but it's pretty 
straightforward to understand the broad strokes.  It's just a 
giant distributed ledger with some crypto to keep it secure and 
hashing to avoid double-counting, ie the duplication you're 
worried about.  But ultimately that doesn't really matter, as 
almost nobody knows how Dollars or other local currencies are 
created or what makes them tough to copy either. ;)


All that matters for a currency is that many buyers and sellers 
will accept it, or at least exchange it quickly and easily for 
your currency of choice, and bitcoin certainly passes that bar.


Regimes vary in how they accommodate some kinds of financial 
innovation.  If you're dealing with dollars anyway, that's one 
thing, but quite another if you have to figure out the peculiar 
local tax treatment (which may well not yet be determinate or 
written down anywhere).  Plus in some places it might invite 
unwelcome scrutiny.


So I agree that bitcoin is a very interesting technology, and 
this may be the real world application of an idea that goes back 
to the 90s of the new monetary economics (a book by cowen and 
kroszner), where the unit of account, medium of exchange, and 
store of value functions of money become unbundled.  But its use 
unreasonable to expect people to behave in an optimising manner 
in every part of their lives, particularly when tax and 
regulation (and uncertainty surrounding them) get in the way.





Re: Calypso progress report (+ updated MingW64 build)

2015-10-26 Thread Laeeth Isharc via Digitalmars-d-announce
Elie - thanks for posting the build.  Have been working on 
something else past day, but this is on my list to look at next.  
Having quantlib work would be very nice for many financial users. 
 Lots of people use it, even just as a check on their own stuff.


Russell, I agree about the plotting, although the stuff I do for 
now is very simple as regards generating the image.  (I just need 
a bit of interactivity).  Speaking about charting today, someone 
mentioned that there are two cultures - science esp physics where 
purity is valued and pretty stuff is seen as not serious, and 
rest of world where people are only human and quite like the 
pretty stuff.


Bachmeier - great to hear about R.  looking forward to it.


Laeeth




Re: Calypso progress report (+ updated MingW64 build)

2015-10-25 Thread Laeeth Isharc via Digitalmars-d-announce

On Monday, 26 October 2015 at 01:39:52 UTC, Elie Morisse wrote:

On Sunday, 25 October 2015 at 21:42:15 UTC, Stefan wrote:

Hello,

// compile with: ldc2 -cpp-args -std=gnu++11 main.d

modmap (C++) "cmath";

import (C++) std._;

import std.stdio;

int main()
{
  writeln(sin(cast(float)0.8159));
return 0;
}

gives a lot of "error: constexpr function never produces a 
constant expression" messages. Not sure this is supposed to 
work?


It's fixed with the latest commit.


any chance of some release builds on github when the time is 
right?  I've tried a few times, and somewhat embarrassingly each 
time I get a bit further, but still never made it to a usable 
version of ldc-calypso.  I didn't want to file bug report as 
figure you have better things to do at this stage and it's a 
moving target. ldc itself I can compile fine (without your mods).


I'd be interested in seeing if quantlib is usable.  it's a 
library that's quite popular in finance world, and might open up 
the set of people that are interested in exploring D.


Re: Fastest JSON parser in the world is a D project

2015-10-24 Thread Laeeth Isharc via Digitalmars-d-announce

On Thursday, 22 October 2015 at 20:10:36 UTC, rsw0x wrote:
On Thursday, 22 October 2015 at 19:16:00 UTC, Laeeth Isharc 
wrote:
On Thursday, 22 October 2015 at 18:23:08 UTC, Andrei 
Alexandrescu wrote:

On 10/22/2015 09:08 AM, Walter Bright wrote:

[...]


This has been a homerun. Congratulations for this work and 
also for publicizing it! (Consider it might have remained 
just one forum discussion read by all of 80 persons...) -- 
Andrei


We really do need to stop hiding our light under a bushel.  
Thinking in marketing terms doesn't always come easy to 
technically minded people, and I understand why, but 
ultimately the community benefits a great deal from people 
becoming aware of the very real benefits D has to offer (alas 
people won't just get it, even if you think they should), and 
there are personal career benefits too from helping 
communicate how you have applied D to do useful work.  It's 
hard to find great programmers and showing what you can do 
will pay off over time.


D has no well defined area to be used in. Everyone knows D, 
when written in a very specific C-mimicking way, is performant. 
But nobody is using C# or Scala or Python for performance.


You reply to my post, but I don't entirely see how it relates.  D 
is very flexible, and that's its virtue.  Because splitting a 
codebase across multiple languages does have a cost, even if it's 
often worth paying the cost in order to use the right till for 
the job when those tools are by their nature specialised.  I 
don't think everyone knows D is performant, and I wouldn't say 
fast JSON is written in a C mimicking way, taken as a whole.


Choices are based on making trade-offs, and the relevant data are 
not static, but constantly shifting.  When an SSD in 2015 that 
isn't especially pricey gives 2.1 Gig a sec throughput and one 
has many terabytes of text data a month to get through, and 
that's today and datasets keep growing and what I write today may 
be in use for years then the right decision will be a very 
different one to that five years ago.   That's not just my 
perception, but those in other fields where the problems are 
similar - bioinformatics and advertising data being some of the 
many others.  AdRoll is known for their Python work, but their 
data scientists use D.


And my point, which you didn't really reply to, is that as a 
community we should do a bit more to share our experiences on how 
D can be useful in doing real work.  As Walter observes, that's 
also something that pays off personally too.




Re: Fastest JSON parser in the world is a D project

2015-10-23 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 23 October 2015 at 19:48:31 UTC, Jacob Carlborg wrote:

On 2015-10-22 22:53, Marco Leise wrote:


There is at least one hurdle. I don't have a place to publish
articles, no personal blog or site I contribute articles to
and I don't feel like creating a one-shot one right now. :)


You could have a look at this blog implementation by Dicebot 
[1]. You still need to host it though.


[1] https://github.com/Dicebot/mood


Mood is very nice, and I plan on using it in the medium term 
(made a pull request so it would compile using gdc or ldc).  But 
you might want to wait a little while as you want a blog to be 
stable, and I think there is a problem with segfaulting right now 
- perhaps to do with the caching of posts, although it shouldn't 
be hard either to fix that or rewrite it your own way (as I 
started doing).


It's worth setting one up though - what you use doesn't matter 
(look at Nikola or one of the other static site generators) - and 
Walter is right.




Re: Fastest JSON parser in the world is a D project

2015-10-22 Thread Laeeth Isharc via Digitalmars-d-announce
On Thursday, 22 October 2015 at 18:23:08 UTC, Andrei Alexandrescu 
wrote:

On 10/22/2015 09:08 AM, Walter Bright wrote:

On 10/21/2015 1:38 PM, Laeeth Isharc wrote:

On Wednesday, 21 October 2015 at 19:03:56 UTC, Suliman wrote:

Could anybody reddit this benchmark?


done
https://www.reddit.com/r/programming/comments/3pojrz/the_fastest_json_parser_in_the_world/





It's item 9 on the front page of https://news.ycombinator.com/ 
too!


This has been a homerun. Congratulations for this work and also 
for publicizing it! (Consider it might have remained just one 
forum discussion read by all of 80 persons...) -- Andrei


We really do need to stop hiding our light under a bushel.  
Thinking in marketing terms doesn't always come easy to 
technically minded people, and I understand why, but ultimately 
the community benefits a great deal from people becoming aware of 
the very real benefits D has to offer (alas people won't just get 
it, even if you think they should), and there are personal career 
benefits too from helping communicate how you have applied D to 
do useful work.  It's hard to find great programmers and showing 
what you can do will pay off over time.




Re: Fastest JSON parser in the world is a D project

2015-10-21 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 21 October 2015 at 09:59:09 UTC, Kapps wrote:
On Wednesday, 21 October 2015 at 04:17:19 UTC, Laeeth Isharc 
wrote:


Seems like you now get 2.1 gigbytes/sec sequential read from a 
cheap consumer SSD today...


Not many consumer drives give more than 500-600 MB/s (SATA3 
limit) yet. There are only a couple that I know of that reach 
2000 MB/s, like Samsung's SM951, and they're generally a fair 
bit more expensive than what most consumers tend to buy (but at 
about $1 / GB, still affordable for businesses certainly).


Yes - that's the one I had in mind.  It's not dirt cheap, but at 
GBP280 if you have some money and want speed, the price is hardly 
an important factor.  I should have said consumer grade rather 
than consumer, but anyway you get my point.


That's today, in 2015.  Maybe one can do even better than that by 
striping data, although it sounds like it's not that easy, but 
still.  "The future is here already; just unevenly distributed".



Seems like if you're processing JSON, which is not the most 
difficult task one might reasonably want to be doing, then 
CPU+memory is the bottleneck more than the SSD.  I don't know 
what outlook is for drive speeds (except they probably won't go 
down), but data sets are certainly not shrinking.  So I am 
intrigued by the difference between what people say is typical 
and what seems to be the case, certainly in what I want to do.




Re: Fastest JSON parser in the world is a D project

2015-10-21 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 21 October 2015 at 19:03:56 UTC, Suliman wrote:

Could anybody reddit this benchmark?


done
https://www.reddit.com/r/programming/comments/3pojrz/the_fastest_json_parser_in_the_world/



Re: Fastest JSON parser in the world is a D project

2015-10-21 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 21 October 2015 at 22:24:30 UTC, Marco Leise wrote:

Am Wed, 21 Oct 2015 04:17:16 +
schrieb Laeeth Isharc :


Very impressive.

Is this not quite interesting ?  Such a basic web back end 
operation, and yet it's a very different picture from those 
who say that one is I/O or network bound.  I already have JSON 
files of a couple of gig, and they're only going to be bigger 
over time, and this is a more generally interesting question.


Seems like you now get 2.1 gigbytes/sec sequential read from a 
cheap consumer SSD today...


You have this huge amount of Reddit API JSON, right?
I wonder if your processing could benefit from the fast
skipping routines or even reading it as "trusted JSON".


The couple of gig were just Quandl metadata for one provider, but 
you're right I have that Reddit data too.  And that's just a 
beginning.  What some have been doing for a while, I'm beginning 
to do now, and many others will be doing in the next few years - 
just as soon as they have finished having meetings about what to 
do...  I don't suppose they'll be using python, at least not for 
long.


I am sure it could benefit - I kind of need to get some other 
parts going first.  (For once it truly is a case of Knuth's 97%). 
 But I'll be coming back to look at best way, for json, but text 
files more generally.


Have you thought about writing up your experience with writing 
fast json?  A bit like Walter's Dr Dobbs's article on wielding a 
profiler to speed up dmd.


And actually if you have time, would you mind dropping me an 
email?  laeeth at


kaledicassociates.com

Thanks.


Laeeth.


Re: Fastest JSON parser in the world is a D project

2015-10-20 Thread Laeeth Isharc via Digitalmars-d-announce

On Wednesday, 14 October 2015 at 07:01:49 UTC, Marco Leise wrote:

The test is pretty simple: Parse a JSON object, containing an 
array of 1_000_000 3D coordinates in the range [0..1) and 
average them.


The performance of std.json in parsing those was horrible still 
in the DMD 2.066 days*:


DMD : 41.44s,  934.9Mb
Gdc : 29.64s,  929.7Mb
Python  : 12.30s, 1410.2Mb
Ruby: 13.80s, 2101.2Mb

Then with 2.067 std.json got a major 3x speed improvement and 
rivaled the popular dynamic languages Ruby and Python:


DMD : 13.02s, 1324.2Mb

In the mean time several other D JSON libraries appeared with 
varying focus on performance or API:


Medea : 56.75s, 1753.6Mb  (GDC)
libdjson  : 24.47s, 1060.7Mb  (GDC)
stdx.data.json:  2.76s,  207.1Mb  (LDC)

Yep, that's right. stdx.data.json's pull parser finally beats 
the dynamic languages with native efficiency. (I used the 
default options here that provide you with an Exception and 
line number on errors.)


A few days ago I decided to get some practical use out of my 
pet project 'fast' by implementing a JSON parser myself, that 
could rival even the by then fastest JSON parser, RapidJSON. 
The result can be seen in the benchmark results right now:


https://github.com/kostya/benchmarks#json

fast:  0.34s, 226.7Mb (GDC)
RapidJSON: 0.79s, 687.1Mb (GCC)

(* Timings from my computer, Haswell CPU, Linux


Very impressive.

Is this not quite interesting ?  Such a basic web back end 
operation, and yet it's a very different picture from those who 
say that one is I/O or network bound.  I already have JSON files 
of a couple of gig, and they're only going to be bigger over 
time, and this is a more generally interesting question.


Seems like you now get 2.1 gigbytes/sec sequential read from a 
cheap consumer SSD today...


dnsmadeeasy API

2015-10-11 Thread Laeeth Isharc via Digitalmars-d-announce

http://code.dlang.org/packages/dnsmadeeasy

DNS Made Easy is a commercial provider of DNS services.

This is a D language implementation of their REST API.  It uses 
the HMAC code from the 2.069 version of Phobos, so requires 
either the beta language version or manual backporting.  (Pull 
requests to do this welcomed).


API here:
http://www.dnsmadeeasy.com/integration/restapi/

It's particularly useful to be able to manipulate the DNS if you 
are launching many cloud instances from an application and wish 
each of them to have a DNS entry that may be set from code.  
Others may find other applications helpful.


Alpha quality - not well-tested and I haven't made much use of it 
myself as yet.




Re: Run D on AWS Lambda

2015-10-10 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 26 July 2015 at 03:55:17 UTC, Laeeth Isharc wrote:

https://aws.amazon.com/lambda/
https://github.com/Laeeth/awslambda_d
http://blog.0x82.com/2014/11/24/aws-lambda-functions-in-go/
No proper docs yet, but you can figure it out from the go 
example.


https://aws.amazon.com/about-aws/whats-new/2015/10/aws-lambda-supports-python-versioning-scheduled-jobs-and-5-minute-functions/

Now runs functions taking up to 5 minutes.  Also Python tasks.  
(Already can run D - see above)


D Language Implementation of DIgitalOcean API

2015-10-08 Thread Laeeth Isharc via Digitalmars-d-announce

I'm sorry, but I posted in the wrong group before.

Digital Ocean provide cloud infrastructure (KVM servers).  They 
serve a somewhat different market to Amazon's AWS and similar 
offering a much less complex product for a significantly lower 
price (especially if you pay the sticker price for Amazon).  
Unlike some other VPN providers, their servers are fast and my 
experience and that of others has been there is less contention 
for resources compared to some alternative lower-priced providers.


https://www.digitalocean.com/features/technology/
https://www.digitalocean.com/pricing/
$10/mo for 1GB RAM + 30 Gb SSD

I have ported their API v2 to D.  It's not very well-tested for 
the time being, and given the conceivable risks if your software 
should go haywire, it might not be a good idea to use in 
production just yet.  But perhaps somebody may find it useful.


Link to the code.dlang.org is here:
http://code.dlang.org/packages/digitalocean_api

DNSMadeEasy API coming up.


Laeeth.


Re: D-Day for DMD is today!

2015-08-29 Thread Laeeth Isharc via Digitalmars-d-announce

On Saturday, 29 August 2015 at 16:07:37 UTC, Daniel Murphy wrote:
Jacob Carlborg  wrote in message 
news:mrsigg$1574$1...@digitalmars.com...


I'm pretty sure we already have a tool that generates C/C++ 
headers for D modules.


Adam started one, I don't think it got to the point where it 
would work for this, and I don't agree that the json output is 
a good way to do it.


I guess he means dstep...


reddit - pls help answer lang qns etc

2015-08-28 Thread Laeeth Isharc via Digitalmars-d-announce

On Friday, 28 August 2015 at 05:33:41 UTC, Laeeth Isharc wrote:
On Monday, 24 August 2015 at 18:43:01 UTC, Andrei Alexandrescu 
wrote:

Hello everyone,


Following an increasing desire to focus on working on the D 
language and foundation, I have recently made the difficult 
decision to part ways with Facebook, my employer of five 
years and nine months.


[...]


I hope you don't mind, but I guess it is public info now, and 
news has a greater impact when fresh:


https://www.reddit.com/r/programming/comments/3ioy9b/andrei_alexandrescu_c_guru_leaves_facebook_tl


It's blowing up on reddit so please chip in to answer questions 
about the language if you have time.





Re: D-Day for DMD is today!

2015-08-27 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:

https://github.com/D-Programming-Language/dmd/pull/4923

We have made the switch from C++ DMD to D DMD!

Many, many thanks to Daniel Murphy for slaving away for 2.5 
years to make this happen. More thanks to Martin Nowak for 
helping shepherd it through the final stages, and to several 
others who have pitched in on this.


This is a HUGE milestone for us.

Much work remains to be done, such as rebasing existing dmd 
pull requests. Thanks in advance for the submitters who'll be 
doing that. I hope you aren't too unhappy about the extra work 
- it's in a good cause!


Congratulations.

I am very impressed by the young talent in the D community.  I 
asked one such chap how he knew so much, and he attributed it to 
learning from being around such top notch guys as you, Andrei, 
and the other contributors.


Should someone post to Reddit ?



Re: D-Day for DMD is today!

2015-08-27 Thread Laeeth Isharc via Digitalmars-d-announce

On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote:

https://github.com/D-Programming-Language/dmd/pull/4923

We have made the switch from C++ DMD to D DMD!

Many, many thanks to Daniel Murphy for slaving away for 2.5 
years to make this happen. More thanks to Martin Nowak for 
helping shepherd it through the final stages, and to several 
others who have pitched in on this.


This is a HUGE milestone for us.

Much work remains to be done, such as rebasing existing dmd 
pull requests. Thanks in advance for the submitters who'll be 
doing that. I hope you aren't too unhappy about the extra work 
- it's in a good cause!



https://www.reddit.com/r/programming/comments/3ioy2l/d_compiler_dmd_moves_front_end_to_pure_d_from_c/

Ready for London morning.


Re: Moving forward with work on the D language and foundation

2015-08-27 Thread Laeeth Isharc via Digitalmars-d-announce
On Monday, 24 August 2015 at 18:43:01 UTC, Andrei Alexandrescu 
wrote:

Hello everyone,


Following an increasing desire to focus on working on the D 
language and foundation, I have recently made the difficult 
decision to part ways with Facebook, my employer of five years 
and nine months.


[...]


I hope you don't mind, but I guess it is public info now, and 
news has a greater impact when fresh:


https://www.reddit.com/r/programming/comments/3ioy9b/andrei_alexandrescu_c_guru_leaves_facebook_to/


Re: This Week in D summarizes those long threads for you!

2015-08-25 Thread Laeeth Isharc via Digitalmars-d-announce

On Tuesday, 25 August 2015 at 21:43:11 UTC, Iain Buclaw wrote:

The work done on GDC is well appreciated, GDC's codebase is 
much cleaner now than it was before the refactoring.




True, and it will only get more cleaner as each section is 
rewritten.  But no one personally congratulates you on 
refactoring code (I have been spearheading a push to remove all 
dmd-backend-isms from gdc.  It took about 3 months work to make 
expression (toElem) codegen to be stateless, and remove the 
dmd-specific 'backend IR state' (IRState) struct from the 
codebase.  And that is barely 1/8 of what needs to be done to 
prepare the move to 2.067)


http://wiki.dlang.org/GDC/CurrentReleaseTasks


How can we make it easier for people to show their appreciation?  
I appreciate very much your work on GDC, and I know that there is 
a general problem that people tend to focus on what's visible and 
not necessarily what's hidden but important.


Everyone knows Steve Jobs.  Wozniak less so.  Who outside of the 
programming world is familiar with Dennis Ritchie?  So part of 
that is just a question of awareness, and so this is an 
interesting development (whatever you think of the person or his 
contributions - that is not my point):

https://www.patreon.com/esr?ty=h




Re: ∅MQD messaging library v1.0 released

2015-08-21 Thread Laeeth Isharc via Digitalmars-d-announce
On Friday, 21 August 2015 at 05:52:42 UTC, Lars T. Kyllingstad 
wrote:

On Tuesday, 18 August 2015 at 20:44:25 UTC, Suliman wrote:
Lars, did you thought about full port? I read post of etcimon 
about his Botan lib. He eventual decided to rewrite original 
lib from C++ to D to make code more easier maintainable.


I considered it, yes, but it is a *lot* more work, and I think 
the wrapper solution turned out rather nice.  The ZMQ API is 
pretty wrappable, and I don't expect it to become much more 
complex in the future either.  The big changes these days seem 
to be in the ZMQ guys' own high-level wrapper library, CZMQ, 
rather than in ZMQ core.


Recently, I've played around with the idea of making a pure D 
implementation of Scalable Protocols, which was created by 
Martin Sustrik, one of the original ZMQ authors.  He invented 
SP and the reference implementation, nanomsg 
(http://nanomsg.org), partly as kind of a do-over for some 
things he considered design mistakes in ZMQ.  SP seems 
cleaner and more principled than ZMQ in many ways.


So many fun projects, so little time...

Lars


I was just looking at nanomsg source the other day, wondering 
just how much work it would be to rewrite in D.


In the meantime if you fancy helping with the D wrapper, do let 
me know.




update to Dlang HDF5 format bindings/wrappers

2015-08-19 Thread Laeeth Isharc via Digitalmars-d-announce

What is HDF5, and why should you use it ?

http://www.hdfgroup.org/why_hdf/

(My summary):
  - very large data sets, very fast access requirements, and 
complex datasets

  - share data across variety of platforms
  - many open-source and commercial tools that understand HDF
  - self-describing and can specify complex data relationships 
and dependencies

  - can contain binary data in many representations
  - allow direct access to parts of file without first parsing 
whole contents
  - hierarchical data objects can be expressed in natural manner 
(contrast

experience with realational database tables)
  - n-dimensional datasets and each element in set may be complex 
object
  - relational databases good for field matching queries but not 
for
sequentially processing all records in database or for 
subsetting data

based on co-ordinate style lookup
  - custom proprietary binary formats often not portable, not 
extensible and
not high-performance.  technical debt to maintain data 
management part of

code

I personally find it useful for storing price data for financial 
instruments, and also economic data.  There are bespoke time 
series databases, but they come at a price, which is not purely a 
pecuniary one.


Updated wrappers are here:
https://github.com/Laeeth/d_hdf5

Changes since last time - some fixes to bindings and updates to 
later version of HDF5 API.  There is more to go to make it 
accessible idiomatically from D, but it's usable today.  A simple 
example of mapping D structs to HDF5 types and back again is in 
the examples/traits directory.


Pull requests and offers to help maintain it are welcome.  It's 
still at an alpha stage, but already useful.




Laeeth.


  1   2   >