<FromGitter>
<kennymalac> scripting languages are often interpreted but not always, Crystal definitely feels like on in my humble opinion
unshadow_ has quit [Ping timeout: 248 seconds]
unshadow has quit [Ping timeout: 240 seconds]
<FromGitter>
<kennymalac> when a language says "C interop is a big feature" it usually implies the language is designed for easy interop, like Lua or others
<RX14>
C++ interop has been touched on bit its teachnically very difficult due to name mangling
<RX14>
C++ compilers don't even attempt interop with each other
<RX14>
yet alone another whole different language
<FromGitter>
<kennymalac> sure, but here you have a language that is easy c++ interop, which I'd personally never use: http://chaiscript.com
<Papierkorb>
Define interop. Passing around a function pointer doesn't fit the bill.
akwiatkowski has quit [Ping timeout: 240 seconds]
<FromGitter>
<kennymalac> I think the expectation is rather than migrating million line codebases to Crystal from C or C++ and using C within the Crystal program that C/C++ should be able to call Crystal from within the source code
<Papierkorb>
They're using template magic, which in effect makes the compiler do all the work. Which works for them fine.
<FromGitter>
<kennymalac> calling it magic is a misnomer, it's compile time polymorphism :)
<RX14>
it's easy enough with extern "C" anyway
<RX14>
so it's not really very high on the priority list
<FromGitter>
<kennymalac> maybe someone will put a bounty for it
p0p0pr37 has quit [Remote host closed the connection]
p0p0pr37 has joined #crystal-lang
p0p0pr37 has joined #crystal-lang
p0p0pr37 has quit [Remote host closed the connection]
<bmcginty>
Does anyone have papers on interop with c++? I'd be massively interested on working on this, as there's loads of systems in c++ that I've not wanted to touch because of lack of interop.
<bmcginty>
Also, weird thing. if you print a function using say {{puts call}} after sending a def to a macro, the compiler doesn't recognize thatyou've just inserted a function, and won't allow you to call it. I'll put an issue on github, and if it's just me being wrong, maybe I can add to the crystal book.
p0p0pr37 has quit [Remote host closed the connection]
p0p0pr37 has joined #crystal-lang
p0p0pr37 has joined #crystal-lang
<FromGitter>
<CodeTortoise> hello. What would be a quick way to start learning Crystal? My experience with Ruby is very low, and from what I have been reading it's better to keep it that way and not get caught up with the syntax
<adam12>
@CodeTortoise Go through the Guides first to get a feel for the syntax. After that, I'd probably poke through some projects listed on the Awesome Crystal page
<adam12>
@CodeTortoise I'd say find a nice solvable problem, something you've done in the past in another language, and do it again in Crystal. If you already know Ruby (which it sounds like you don't), it can be easier to pickup Crystal as the language is very similar, but Crystal itself is very approachable, so you don't need to know Ruby to pick it up.
Kug3lis_off is now known as Kug3lis
Kug3lis_ has joined #crystal-lang
<bmcginty>
CodeTortoise: what languages have you written in previously? what interests you/pays the bills in other languages (or not)?
unshadow2 has quit [Ping timeout: 256 seconds]
unshadow1 has quit [Ping timeout: 256 seconds]
unshadow has joined #crystal-lang
matp has quit [Remote host closed the connection]
unshadow_ has joined #crystal-lang
matp has joined #crystal-lang
<FromGitter>
<CodeTortoise> Programming doesn't pay my bill, yet. I have studied mostly C++. I started learning Ruby some time ago, but have forgotten any of it. I couldn't write a Hello World off the top of my head, but could probably read it okay. The things that interest me are learning to build native applications quickly for small ideas I have, mostly for my own benefit, like a knowledge management system -- there are so many of those -- better
<FromGitter>
... timer
matp has quit [Remote host closed the connection]
<FromGitter>
<CodeTortoise> 's with whatever functions I want. Random things mostly. Really I just want to play and get good programming things just to make my life easier. Sort of like the book "Automate The Boring Stuff with Python" but with a language I can actually enjoy typing in.
matp has joined #crystal-lang
Ven has quit [Ping timeout: 240 seconds]
Ven has joined #crystal-lang
Ven has quit [Ping timeout: 264 seconds]
Ven has joined #crystal-lang
akwiatkowski has joined #crystal-lang
soveran has joined #crystal-lang
soveran has joined #crystal-lang
soveran has quit [Changing host]
mark_66 has joined #crystal-lang
Ven has quit [Ping timeout: 245 seconds]
Ven has joined #crystal-lang
Ven has quit [Ping timeout: 245 seconds]
Ven has joined #crystal-lang
Ven has quit [Ping timeout: 240 seconds]
gloscombe has joined #crystal-lang
Ven has joined #crystal-lang
ome has quit [Quit: Connection closed for inactivity]
Ven has quit [Ping timeout: 256 seconds]
bjz has joined #crystal-lang
Ven has joined #crystal-lang
Ven has quit [Ping timeout: 240 seconds]
<FromGitter>
<GuneshRaj> Hi, is there a plan to create a Crystal Langage server, much like what Rust has done?
Ven has joined #crystal-lang
unshadow_ has quit [Quit: leaving]
unshadow_ has joined #crystal-lang
bjz has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
unshadow_ has quit [Client Quit]
Ven has quit [Ping timeout: 240 seconds]
rokf has joined #crystal-lang
Ven has joined #crystal-lang
p0p0pr37 has quit [Remote host closed the connection]
bjz_ has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<unshadow>
BlaXpirit: Can't manage to get that to work, it "compiles" but ldd shows that it uses the default lib instead of the one indicated in the path
<BlaXpirit>
unshadow, for compilation you need to specify LIBRARY_PATH, for running you need to specify LD_LIBRARY_PATH
<BlaXpirit>
you could also specify LD_LIBRARY_PATH when running ldd...
<BlaXpirit>
there is a way to hardcode a path in a binary but i found it not worth trying for
<unshadow>
Oh.... cool , thanks :)
<BlaXpirit>
u can do two in one with the line i showed at first if you use `crystal run...`
<unshadow>
BlaXpirit: how can I tell crystal run to take arguments for the program it's running (cli arguments)
<BlaXpirit>
unshadow, `crystal prog.cr arg arg` should work or to be sure `crystal run prog.cr -- arg arg`
Ven has joined #crystal-lang
<unshadow>
BlaXpirit: 2nd option did it for me, thanks :)
Ven has quit [Read error: Connection reset by peer]
<FromGitter>
<bcardiff> @sdogruyol / @Papierkorb I've been working on SEH (native windows exception support) and I think I discovered the eighth ring of hell :-P. I move to do some experiments with Windows 10 with Visual C++ Build Tools (command line \o/ ) instead of wine so I can make more real experiments. There will continue to be effors and resources for sure. Probably @lbguilherme will have something to add since he had done most of the work.
sz0 has quit [Quit: Connection closed for inactivity]
Kug3lis_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]