swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
jeffmo has quit [Client Quit]
cdidd has quit [Ping timeout: 250 seconds]
rand000 has quit [Quit: leaving]
MrScout has joined #ocaml
orbitz_ has quit [Read error: Connection reset by peer]
orbitz has joined #ocaml
ztennix has joined #ocaml
ztennix has quit [Quit: WeeChat 1.2]
manizzle has quit [Ping timeout: 240 seconds]
tennix has joined #ocaml
ngram has quit [Ping timeout: 246 seconds]
psy_ has quit [Ping timeout: 260 seconds]
tmtwd has joined #ocaml
psy_ has joined #ocaml
psy_ has quit [Max SendQ exceeded]
psy_ has joined #ocaml
MrScout has quit [Ping timeout: 244 seconds]
darkf has joined #ocaml
Bhavya has joined #ocaml
psy_ has quit [Ping timeout: 240 seconds]
darkf_ has joined #ocaml
darkf has quit [Disconnected by services]
darkf_ is now known as darkf
ygrek_ has quit [Ping timeout: 252 seconds]
mcclurmc has quit [Remote host closed the connection]
grouzen has quit [Ping timeout: 246 seconds]
grouzen has joined #ocaml
mcclurmc has joined #ocaml
MrScout has joined #ocaml
MrScout has quit [Remote host closed the connection]
swgillespie has joined #ocaml
manud has joined #ocaml
manud has quit [Client Quit]
manud has joined #ocaml
Intensity has quit [Ping timeout: 244 seconds]
Intensity has joined #ocaml
MercurialAlchemi has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
tmtwd has quit [Read error: Connection reset by peer]
Simn has joined #ocaml
ygrek_ has joined #ocaml
mort___ has joined #ocaml
shinnya has quit [Ping timeout: 265 seconds]
mort___ has quit [Ping timeout: 250 seconds]
dvb_ua has joined #ocaml
Bhavya has quit [Quit: Quit the channel]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
psy_ has joined #ocaml
manud has quit [Quit: manud]
ygrek_ has quit [Ping timeout: 272 seconds]
tane has joined #ocaml
Akshay has joined #ocaml
Kakadu has joined #ocaml
toolslive has joined #ocaml
manud has joined #ocaml
manud has quit [Client Quit]
creichert has quit [Remote host closed the connection]
jonludlam has joined #ocaml
QuanticPotato has joined #ocaml
manud has joined #ocaml
QuanticPotato has quit [Ping timeout: 255 seconds]
QuanticPotato has joined #ocaml
yomimono has joined #ocaml
QuanticPotato has quit [Ping timeout: 240 seconds]
QuanticPotato has joined #ocaml
MercurialAlchemi has quit [Ping timeout: 255 seconds]
Akshay_ has joined #ocaml
Akshay has quit [Ping timeout: 246 seconds]
shinnya has joined #ocaml
huza has joined #ocaml
QuanticPotato has quit [Ping timeout: 250 seconds]
MercurialAlchemi has joined #ocaml
vishesh has quit [Read error: Connection reset by peer]
BitPuffin|osx has quit [Ping timeout: 252 seconds]
Drup has quit [Ping timeout: 244 seconds]
Drup has joined #ocaml
struktured has quit [Ping timeout: 272 seconds]
manud has quit [Quit: manud]
manud has joined #ocaml
jonludlam has quit [Ping timeout: 244 seconds]
TheLemonMan has joined #ocaml
toolslive has quit [Ping timeout: 256 seconds]
huza has quit [Quit: WeeChat 0.3.8]
tane has quit [Ping timeout: 252 seconds]
zpe has joined #ocaml
tane has joined #ocaml
tennix has quit [Ping timeout: 252 seconds]
Hannibal_Smith has joined #ocaml
cdidd has joined #ocaml
Anarchos has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
tane has quit [Quit: Verlassend]
yomimono has quit [Ping timeout: 265 seconds]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
Anarchos has joined #ocaml
Akshay_ has quit [Ping timeout: 240 seconds]
tane has joined #ocaml
nullcat_ has joined #ocaml
Akshay_ has joined #ocaml
oscar_toro has quit [Ping timeout: 265 seconds]
oscar_toro has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
nullcat_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
lewis1711 has joined #ocaml
zpe has quit [Remote host closed the connection]
toolslive has joined #ocaml
ggole has joined #ocaml
<lewis1711>
I think I am going to start compiling my ocaml interpter and work with it from within itself. the ocaml repl is a bit annoying for interactively testing programs with multiple files. which is a shame as it does so much right - like using a bytecode interpreter instead of trying to compile everything on the fly
<ggole>
I deal with that by using ocamlbuild a to make a toplevel containing all the bits
<ggole>
It is undeniably inconvenient to set up.
<lewis1711>
my hack is to have a file that loads all my modules in order
<companion_cube>
I use utop + a .ocamlinit file
ollehar has joined #ocaml
<MercurialAlchemi>
utop + .ocamlinit work
<lewis1711>
you mean just littering your .ocaml init with #mod_use?
tennix has joined #ocaml
tennix has joined #ocaml
iZsh has quit [Remote host closed the connection]
<companion_cube>
lewis1711: in my project's directory there is an automatically loaded .ocamlinit file, full of #directory, #load and #install_printer
<lewis1711>
ah yes
<lewis1711>
I have some similar hack
<lewis1711>
in fairness though I've never used a static-language-with-repl that was as nice as the dynamic ones for interactive developing
tennix has quit [Ping timeout: 244 seconds]
tennix has joined #ocaml
Akshay_ has quit [Ping timeout: 244 seconds]
<ggole>
Yeah, the toplevel isn't all that nice compared to something like slime
<companion_cube>
I have no idea what that looks like
<companion_cube>
I don't use the toplevel that much, I admit
<ggole>
It's a chunk of software for interfacing emacs and a running common lisp
<companion_cube>
oh I see, emacs again :)
<companion_cube>
doesn't tuareg do similar stuff?
<ggole>
Not really
<ggole>
None of the ocaml tools do
<ggole>
Well, merlin does some of the code location and completion stuff
<companion_cube>
I suppose merlin does a better job at completion than any lisp tool, though
<ggole>
Not really.
manud has quit [Quit: manud]
<ggole>
What I mostly miss is the debugger and inspector (and maybe occasionally the disassembler)
<companion_cube>
I don;t see how completion would work as well in untyped lisp :)
<ggole>
Having stuff like docstrings and eldoc-style tips is also very nice
<ggole>
Because it talks to a running lisp process that contains all of the relevant symbols.
<companion_cube>
oh, completion in a repl
<ggole>
No
<companion_cube>
ok
<ggole>
You start slime, load your source into the lisp, and then slime talks to that lisp about what it knows about the source.
<ggole>
Of course you can also use a repl if you like.
Anarchos has joined #ocaml
<lewis1711>
slime seems like a good model. shame it's in emacs
<companion_cube>
ggole: but, for a program that has inputs, you need to provide inputs for completion to work well, right?
<ggole>
Slime completion isn't type driven, so no
<ggole>
I don't agree that precise types are necessary for good completion (in lisp).
<ggole>
In other languages there's more of a win for knowing the type.
<companion_cube>
I hope I see this in action one day, to better grasp it :)
rand000 has joined #ocaml
Akshay_ has joined #ocaml
grouzen has quit [Ping timeout: 260 seconds]
toolslive has quit [Quit: Leaving]
tane has quit [Ping timeout: 244 seconds]
lewis1711 has quit [Ping timeout: 240 seconds]
tane has joined #ocaml
Drup has quit [Ping timeout: 240 seconds]
Hannibal_Smith has quit [Ping timeout: 240 seconds]
Drup has joined #ocaml
zpe has joined #ocaml
zpe has quit [Remote host closed the connection]
zpe has joined #ocaml
zpe has quit [Remote host closed the connection]
BitPuffin|osx has joined #ocaml
BitPuffin|osx has quit [Remote host closed the connection]
BitPuffin|osx has joined #ocaml
TheLemonMan has joined #ocaml
grouzen has joined #ocaml
Anarchos has quit [Quit: Vision[0.9.7-H-20140108]: i've been blurred!]
mea-culpa has joined #ocaml
hbar has quit [Ping timeout: 256 seconds]
brendan has quit [Ping timeout: 256 seconds]
grouzen has quit [Ping timeout: 246 seconds]
hbar has joined #ocaml
brendan has joined #ocaml
lordkryss has joined #ocaml
zpe has joined #ocaml
Simn has quit [Ping timeout: 252 seconds]
zpe has quit [Remote host closed the connection]
sh0t has joined #ocaml
freedrull has joined #ocaml
nullcat has joined #ocaml
Kakadu has quit [Remote host closed the connection]
<struktured>
I'm looking for a concise breakdown between "include (Foo : FOO)", "include (Foo: FOO with module A = B)", and "include (Foo: FOO with module A := B)". It seems like in the latter case module Foo loses its own local declaration of module A
<struktured>
(eg. Foo.A no longer part of Foo's sig)
Akshay_ has quit [Quit: Leaving]
<nullc____>
the difference between : and := is always brought up here
<nullc____>
basically, you can think := literally changes every occurrence of lhs with rhs
<nullc____>
with =, you are just saying lhs and rhs are the same type ...
<nullc____>
that's how i interpret the difference. it's not really formal
<struktured>
thats interesting. I will think through that interpretation
<struktured>
thanks. I use them alot but I feel like I don't really understand them
nullc____ is now known as nullcat_
<struktured>
I got past my compiler though :) yay
<struktured>
*compiler error
<nullcat_>
wait
<nullcat_>
last time discussion of this difference was brought up by me
<nullcat_>
and i remember you said "whatever that works for me is fine"...
<nullcat_>
so... maybe it's better to make sure this difference is totally clear to you?
<nullcat_>
maybe i remembered wrong. whatever
<struktured>
This is what really confused me, trying to apply your interpreation module type S = sig module A : sig type t end end module Make(T: S with module A := Int32) = struct module A = T.A end;
<struktured>
;
<struktured>
T.A does not exist there
<struktured>
so compiler generates error
<struktured>
and yeah maybe I'm sick of doing trial and error, want to be right the first time I write i t :)
<Drup>
" It seems like in the latter case module Foo loses its own local declaration of module A " <- This is exactly what happens
tennix has quit [Ping timeout: 244 seconds]
<Drup>
A = B is expanded to "for all types t in A, A.t = B.t"
<Drup>
(and it checks that the module have the same sigs, of course, but I'm talking about the exported type equalities
mcclurmc has joined #ocaml
tennix has joined #ocaml
igoroliveira has joined #ocaml
Hannibal_Smith has joined #ocaml
tennix has quit [Ping timeout: 240 seconds]
lolisa has joined #ocaml
jao has quit [Ping timeout: 264 seconds]
<struktured>
I thought it would be such that, in my 2nd example, that T.A would still exist but have a new RHS definition which still is compatible with previous definition's signature
obadz- has quit [Ping timeout: 250 seconds]
obadz has joined #ocaml
zpe has joined #ocaml
psy_ has joined #ocaml
ncthom91 has joined #ocaml
struktured has quit [Ping timeout: 244 seconds]
MercurialAlchemi has quit [Ping timeout: 265 seconds]
rand000 has quit [Ping timeout: 256 seconds]
kawaii-imouto is now known as pyon
jonludlam has quit [Quit: Leaving]
psy_ has quit [Ping timeout: 246 seconds]
ncthom91 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
darkf has quit [Quit: Leaving]
psy_ has joined #ocaml
zpe has quit [Remote host closed the connection]
psy_ has quit [Max SendQ exceeded]
psy_ has joined #ocaml
struktured has joined #ocaml
tennix has joined #ocaml
<Drup>
No, T.A is completely erased
<Drup>
this is very useful for types
<Drup>
struct type t = ... include (A : FOO with type t := t)
<Drup>
end
<Drup>
then type t is not redefined
tmtwd has joined #ocaml
tennix has quit [Ping timeout: 244 seconds]
tennix has joined #ocaml
tennix has joined #ocaml
Submarine has joined #ocaml
Submarine has joined #ocaml
tennix has quit [Ping timeout: 246 seconds]
nullcat_ has quit [Ping timeout: 246 seconds]
obadz has quit [Ping timeout: 250 seconds]
swgillespie has joined #ocaml
lolisa has quit [Quit: meow]
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
<struktured>
that case makes more sense because including A makes A.* irrevelant
<struktured>
thanks for the clarification though. think I got the hang of these operators now
obadz has joined #ocaml
struktured has quit [Ping timeout: 240 seconds]
Akshay has quit [Read error: Connection reset by peer]
ncthom91 has joined #ocaml
elfring has joined #ocaml
shinnya has quit [Ping timeout: 246 seconds]
ygrek has joined #ocaml
ygrek has quit [Remote host closed the connection]
ygrek has joined #ocaml
jbrown has quit [Ping timeout: 264 seconds]
mea-culpa has quit [Quit: ERC (IRC client for Emacs 24.5.1)]
jbrown has joined #ocaml
igoroliveira has quit [Quit: Connection closed for inactivity]
swgillespie has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
nullcat_ has joined #ocaml
divyanshu has joined #ocaml
tennix has joined #ocaml
tennix has joined #ocaml
tennix has quit [Ping timeout: 250 seconds]
shinnya has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
mcclurmc has joined #ocaml
rand000 has joined #ocaml
mcclurmc has quit [Remote host closed the connection]
sh0t has quit [Remote host closed the connection]
shinnya has quit [Ping timeout: 246 seconds]
divyanshu has quit [Quit: Computer has gone to sleep.]
divyanshu has joined #ocaml
elfring has quit [Quit: Konversation terminated!]
creichert has joined #ocaml
mcclurmc has joined #ocaml
mcclurmc has quit [Ping timeout: 240 seconds]
dvb_ua has quit [Ping timeout: 246 seconds]
Hannibal_Smith has quit [Quit: Leaving]
Haudegen has quit [Ping timeout: 244 seconds]
toomuchtvrotsurb has joined #ocaml
Haudegen has joined #ocaml
ygrek has quit [Ping timeout: 272 seconds]
toomuchtvrotsurb has quit [Remote host closed the connection]
toomuchtvrotsurb has joined #ocaml
toomuchtvrotsurb has quit [Ping timeout: 246 seconds]