Elixir getting started - Creating File

Hello, im new to elixir and new to linux(using ubuntu 14.04 now), started this week. Im following this http://elixir-lang.org/getting-started/modules.html i feel like is a fool question but how i create a file? or where i have tu put? i created one with sublime text 2 but can’t compile in the terminal. Also if you have any advices of learning, would be great! .Thx.

1 Like

I found that reading this part of the guide and then using mix to create a new project was helpful.

1 Like

To give you the best help on this we need to know how exactly you created that file using sublime and how you tried to compile it. Both including full path of where saved and where run the commands to compile.

2 Likes

You can simply save files with the .ex or .exs extension.

.exs is scripted mode, and does not need to be compiled - have a look here in the guide.

I write on sublime(have elixir bundle) and save it like .exs in documents, the open terminal and put: $ elixir math.exs . No file named appears, so i think i have to put in another path but dont know where.

I will read that, thx.

Then you’ll have to check where sublime saved the file on disk, open a terminal cd to that path and try elixir command again. If this sentence means nothing to you, you should start out with a Linux tutorial. I don’t have on at hand, I was guided through my first Linux steps 20 years ago, long before we had internet at home by a friend of my father. Before that I’ve grown up with DOS so some concepts were already known to me.

2 Likes

Are you on OS X? If so open a terminal window and enter cd desktop which will take you to the desktop, then make sure your file is on the desktop, then simply use the command to run the file, e.g. elixir my_file.exs.

Nope, he isn’t :wink: According to the starting post he uses Ubuntu 14.04 LTS and is new to linux and elixir as well.

1 Like

Ah right sorry :lol:

The same thing should work though - navigate to the folder where the file is and run the Elixir command from there. Alternatively, if you can get to your file you can usually just drag it into a terminal window and location will show, which you can then just prefix with elixir, e.g:

elixir /Users/Aston/code/my_file.exs

Oh and if that file is really named math.exs, try find ~ -name 'math.exs' in an open terminal, it might take quiiiiite a whiiiiiile… Go drink a cup can of coffee :wink:

Somewhere in that output there should be a line showing you the path to the file.

Another way (assuming Unity) is to enter the name of the file in the opened dashboard. If I do recall correctly it might show you exactly that file you created then. You can rightclick this and “open filemanager at path” or depending on your config even “open terminal at path” or something along that lines. Also this does only work if zeitgeist (indexing demon) is installed and enabled[1]. Also it is about 3 years ago I used Unity the last time, memory is fading and things could have changed.

[1] It is both by default since it is a hard dependency of Unity, but since it can be a real CPU, HDD and RAM hogger, many people do some tricks to “deactivate” it.

1 Like

This work! thx :D!, so can someone explain me for what is this http://elixir-lang.org/install.html#setting-path-environment-variable? i put the elixir bin path and the path where sublime save file,and thought that would work.

The PATH-variable is set that the operating system is able to find an executable that is called “unqualified”. You can always call an executable file by qualifing it as in “./configure” or “/usr/bin/bash”. No executable file will ever look at PATH to find a file that’s given to it as an argument (unless it has very obscure reasons to). If you need to give a file as an argument to an executable, then you always need to specify its relative path to the current working directory (or the full path from the root of the filesystem).