flux changed the topic of #ocaml to: Discussions about the OCaml programming language | http://caml.inria.fr/ | OCaml 4.00.1 http://bit.ly/UHeZyT | http://www.ocaml.org | Public logs at http://tunes.org/~nef/logs/ocaml/
<whitequark> >Canonical mappings (Decomposition_Mapping property values) are always limited so that no string when normalized to NFC expands to more than 3× in length (measured in code units).
<whitequark> interesting constraints
jayprich has quit [Quit: jayprich]
<pippijn> useful
<pippijn> so you know what to allocate
jayprich has joined #ocaml
<pippijn> whitequark: https://paste.xinu.at/2DK8/
<pippijn> untested :)
jayprich has quit [Client Quit]
walter has joined #ocaml
<whitequark> nice
<whitequark> I like how your new impl is more clear
<pippijn> yeah
<pippijn> the other one grew
<pippijn> this one is more planned
contempt has quit [Ping timeout: 248 seconds]
contempt has joined #ocaml
Drup has quit [Quit: Leaving.]
eikke has quit [Ping timeout: 248 seconds]
travisbrady has joined #ocaml
<pippijn> whitequark: ok
<pippijn> whitequark: ((Char.code c1 lsl (6 × 0)) land 0x000000ff)
<pippijn> eh
<pippijn> whitequark: https://paste.xinu.at/XICh/
<pippijn> whitequark: just the UTF_* things
<pippijn> I can implement UTF16/32LE set in terms of BE set
<pippijn> but not get
<pippijn> and in ocaml, I can't cast the string data to int and byte swap it, so I'll just leave it like this
osa1 has quit [Quit: Konversation terminated!]
justdit has joined #ocaml
justdit has quit [Read error: Connection reset by peer]
travisbrady has quit [Quit: travisbrady]
<whitequark> pippijn: sure
<whitequark> it's fine
<pippijn> then, this kind of stuff
* whitequark nods
<pippijn> hmm
<pippijn> fold_right needs to scan backwards
<pippijn> so UTF needs a backwards scan function
<whitequark> that's problematic
<pippijn> why?
<whitequark> eh, since utf8 can only be scanned ltr
justdit has joined #ocaml
<whitequark> or you need to guess
<pippijn> hmm
<whitequark> also
<whitequark> anyone ever uses fold_right?
travisbrady has joined #ocaml
walter has quit [Read error: Connection reset by peer]
<pippijn> yeah, that's problematic
<pippijn> let's ignore fold_right
pkrnj has quit [Quit: Computer has gone to sleep.]
<whitequark> I can't really imagine use cases for it
<pippijn> I think if there really is a use case, you can reverse the string and then fold_left
walter has joined #ocaml
<pippijn> reversal is not hard
* whitequark nods
<whitequark> you can even reverse in-place, if you *really* need that
<whitequark> unicode is very well-suited for doing all kinds of stuff in-place
<pippijn> yes
<whitequark> normalization, reversal, etc
<pippijn> meh
<pippijn> I need the buffer to implement map
f[x] has joined #ocaml
<pippijn> but the buffer needs the string
<pippijn> *sigh*
<whitequark> hah
<pippijn> I'm tired
<whitequark> circular dependency?
<pippijn> yes
<pippijn> maybe that's ok
<whitequark> functors to the rescue?
<whitequark> or you could eg UTF_8.Buffer
<pippijn> maybe recursive modules
<pippijn> is it possible to have recursive functors?
<pippijn> ok, not necessary
<pippijn> but would be nicer
pkrnj has joined #ocaml
darkf has joined #ocaml
q66 has quit [Quit: Leaving]
f[x] has quit [Ping timeout: 240 seconds]
justdit has quit [Quit: Lost terminal]
pygmalion has joined #ocaml
f[x] has joined #ocaml
<pippijn> whoa
<pippijn> I don't know whether I'm happy with this code
<pippijn> I'm calling it a night
breakds has quit [Quit: Konversation terminated!]
mattrepl has quit [Quit: mattrepl]
tane has quit [Quit: Verlassend]
introom has joined #ocaml
walter has quit [Quit: This computer has gone to sleep]
yacks has quit [Quit: Leaving]
ivan\_ has joined #ocaml
orbitz_ has joined #ocaml
TaXules has joined #ocaml
TaXules_ has quit [*.net *.split]
ivan\ has quit [*.net *.split]
orbitz has quit [*.net *.split]
noplamodo has quit [*.net *.split]
whitequark has quit [*.net *.split]
alang has quit [*.net *.split]
ivan\_ is now known as ivan\
noplamodo has joined #ocaml
pkrnj has quit [Quit: Computer has gone to sleep.]
travisbrady has quit [Quit: travisbrady]
Neros has quit [Ping timeout: 245 seconds]
whitequark has joined #ocaml
alang has joined #ocaml
ben_zen has joined #ocaml
pkrnj has joined #ocaml
gnuvince has quit [Remote host closed the connection]
pygmalion has quit [Ping timeout: 245 seconds]
ggole has joined #ocaml
csakatoku has joined #ocaml
yacks has joined #ocaml
madroach has joined #ocaml
pygmalion has joined #ocaml
pygmalion has quit [Ping timeout: 245 seconds]
ben_zen has quit [Quit: Lost terminal]
<flux> mrvn, the destination becomes 'writable' at that point to deliver the error (but if you have nothing to write you won't even ask about it), but it will also be in the exceptional fd set
weie_ has joined #ocaml
weie has quit [Ping timeout: 246 seconds]
pygmalion has joined #ocaml
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
pygmalion has quit [Ping timeout: 248 seconds]
csakatok_ has joined #ocaml
csakatoku has quit [Ping timeout: 248 seconds]
f[x] has quit [Ping timeout: 240 seconds]
csakatok_ has quit [Remote host closed the connection]
csakatoku has joined #ocaml
pygmalion has joined #ocaml
f[x] has joined #ocaml
pygmalion has quit [Ping timeout: 245 seconds]
f[x] has quit [Ping timeout: 248 seconds]
mort___ has quit [Quit: Leaving.]
Arsenik has joined #ocaml
osnr has quit [Quit: Leaving.]
Yoric has joined #ocaml
orbitz_ has quit [Quit: Reconnecting]
orbitz has joined #ocaml
ttamttam1 has joined #ocaml
introom has quit [Remote host closed the connection]
f[x] has joined #ocaml
ulfdoz has joined #ocaml
yacks has quit [Ping timeout: 240 seconds]
thomasga has joined #ocaml
yacks has joined #ocaml
csakatoku has quit [Remote host closed the connection]
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
mika1 has joined #ocaml
cago has joined #ocaml
thomasga has quit [Quit: Leaving.]
pygmalion has joined #ocaml
csakatoku has joined #ocaml
AltGr has joined #ocaml
Arsenik has quit [Quit: Quitte]
pygmalion has quit [Ping timeout: 245 seconds]
eikke has joined #ocaml
mcclurmc has joined #ocaml
ontologiae_ has joined #ocaml
ttamttam1 has left #ocaml []
osnr has quit [Quit: Leaving.]
Simn has joined #ocaml
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
pkrnj has quit [Quit: Textual IRC Client: www.textualapp.com]
y has joined #ocaml
y is now known as Guest39192
thomasga has joined #ocaml
pygmalion has joined #ocaml
Guest39192 is now known as ygrek
f[x] has quit [Ping timeout: 240 seconds]
pygmalion has quit [Ping timeout: 276 seconds]
osnr has quit [Quit: Leaving.]
introom has joined #ocaml
<introom> does ocaml have reference doc like http://docs.python.org/ ?
<ggole> Yes. Google for "ocaml doc".
eikke has quit [Read error: Operation timed out]
eikke has joined #ocaml
<introom> is ocaml.org the official site for ocaml? the 'user manual' on that site http://ocaml.org/books.html#manual doesn't make sense.
<ggole> http://caml.inria.fr/pub/docs/manual-ocaml/ is the "official" manual AFAIK
<ggole> ...which I see ocaml.org links to
<introom> ggole: hmmm, doesn't the 'user manual' link to http://ocaml.org/books.html#manual ? wonder where you click the link.
yacks has quit [Ping timeout: 240 seconds]
Yoric has quit [Ping timeout: 264 seconds]
<Cypi> introom : click on the "Online" link, just under the item "The OCaml System: Documentation and User's Manual"
<ggole> That anchor is quite poorly placed
<ggole> Cuts off the heading.
<introom> yes, even didn't notice that.
<ggole> Hmm, not the anchor: it's the silly header thing that floats over the top
pygmalion has joined #ocaml
tane has joined #ocaml
tane has quit [Remote host closed the connection]
tane has joined #ocaml
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
eikke has quit [Ping timeout: 276 seconds]
eikke has joined #ocaml
osnr has quit [Ping timeout: 248 seconds]
sgnb has quit [Remote host closed the connection]
sgnb has joined #ocaml
pygmalion has quit [Ping timeout: 245 seconds]
zpe has joined #ocaml
beckerb has joined #ocaml
zpe has quit [Remote host closed the connection]
mort___ has joined #ocaml
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
tane has quit [Quit: Verlassend]
osnr has quit [Ping timeout: 264 seconds]
osa1 has joined #ocaml
introom has quit [Remote host closed the connection]
dsheets has quit [Ping timeout: 240 seconds]
ollehar has joined #ocaml
Yoric has joined #ocaml
eikke has quit [Ping timeout: 246 seconds]
oberonc has joined #ocaml
<oberonc> hi
<oberonc> I'm tryign to compile a package that uses inifiles library
<oberonc> I get the error message:
<oberonc> Error: Cannot find file /[path]/pkgs/ocaml/3.12.1/lib/ocaml/site-lib/inifiles/inifiles.cmxa
<oberonc> in the library I have the following files:
<oberonc> META inifiles.cma inifiles.cmi inifiles.mli inilexer.cmi parseini.cmi parseini.mli
<oberonc> how do I generate a cmxa file ?
<ygrek> oberonc, cmxa is the native code library
pygmalion has joined #ocaml
<ygrek> Makefile for inifiles should have opt target or something like that
osa1 has quit [Ping timeout: 246 seconds]
<ygrek> generally the library Makefile should automatically build and install native code if the platform supports it (i.e. ocamlopt is present)
<orbitz> opam install ocaml-inifiles
<adrien_oww> "make opt" ? :P
pygmalion has quit [Ping timeout: 248 seconds]
<oberonc> "make opt" did the trick, thanks
<orbitz> oberonc: you should just install via opam
q66 has joined #ocaml
dsheets has joined #ocaml
zpe has joined #ocaml
zpe has quit [Ping timeout: 240 seconds]
f[x] has joined #ocaml
ygrek has quit [Ping timeout: 240 seconds]
Drup has joined #ocaml
eikke has joined #ocaml
pygmalion has joined #ocaml
kaustuv has joined #ocaml
pygmalion has quit [Ping timeout: 256 seconds]
<kaustuv> gasche: I think batteries should use cppo instead of the ## hack
oberonc has left #ocaml []
csakatoku has quit [Remote host closed the connection]
f[x] has quit [Ping timeout: 264 seconds]
Neros has joined #ocaml
_andre has joined #ocaml
yacks has joined #ocaml
pygmalion has joined #ocaml
pygmalion has quit [Ping timeout: 248 seconds]
breakds has joined #ocaml
ocp has joined #ocaml
ocp has quit [Client Quit]
ocp has joined #ocaml
mehdid_ has quit [Read error: Operation timed out]
mehdid has joined #ocaml
csakatoku has joined #ocaml
kaustuv has left #ocaml []
f[x] has joined #ocaml
csakatoku has quit [Ping timeout: 276 seconds]
pygmalion has joined #ocaml
pygmalion has quit [Ping timeout: 248 seconds]
smondet has joined #ocaml
Neros has quit [Ping timeout: 264 seconds]
demonimin has quit [Remote host closed the connection]
demonimin has joined #ocaml
Zeev has joined #ocaml
AltGr has quit [Read error: Operation timed out]
AltGr has joined #ocaml
travisbrady has joined #ocaml
zpe has joined #ocaml
travisbrady has quit [Client Quit]
pygmalion has joined #ocaml
travisbrady has joined #ocaml
tobiasBora has joined #ocaml
<hcarty> AltGr: Thanks for taking time to look into the ocaml-top bug. I'll see if I can find out anything else which may be causing/triggering the problem.
Drup has quit [Ping timeout: 245 seconds]
pygmalion has quit [Ping timeout: 248 seconds]
tobiasBora has quit [Client Quit]
tobiasBora has joined #ocaml
zpe has quit [Remote host closed the connection]
gnuvince has joined #ocaml
pygmalion has joined #ocaml
<ggole> I'd like to throw an informative exception indicating an unexpected value, but the value is polymorphic. What is a reasonable approach?
<AltGr> hcarty: well you're welcome, thanks for reporting
<AltGr> is your machine multi-core ?
walter has joined #ocaml
Yoric has quit [Ping timeout: 256 seconds]
pygmalion has quit [Ping timeout: 276 seconds]
<whitequark> AltGr: are there any non-multicore machines left?
<AltGr> whitequark: hmm, my cheap phone has 2 cores, but you could, I don't know, run a VM on a single core ?
<AltGr> hcarty: if you set OCP_DEBUG=1 and run from the command-line you might be able to get more information
mika1 has quit [Quit: Leaving.]
ollehar has quit [Ping timeout: 264 seconds]
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
osnr has quit [Ping timeout: 256 seconds]
Neros has joined #ocaml
cago has left #ocaml []
tobiasBora has quit [Ping timeout: 248 seconds]
tobiasBora has joined #ocaml
Neros has quit [Ping timeout: 245 seconds]
<samebchase> What's the usual way of converting a Some String to +
<samebchase> s/+// String
zpe has joined #ocaml
<whitequark> matching it?
<jpdeplaix> samebchase: a « string option » to « string » ? yes match
eikke has quit [Ping timeout: 248 seconds]
zpe has quit [Ping timeout: 276 seconds]
thomasga has quit [Quit: Leaving.]
pygmalion has joined #ocaml
<samebchase> thanks.
walter has quit [Read error: Connection reset by peer]
walter has joined #ocaml
joedralliam has joined #ocaml
joedralliam has quit [Client Quit]
pygmalion has quit [Ping timeout: 276 seconds]
f[x] has quit [Ping timeout: 245 seconds]
csakatoku has joined #ocaml
napping has joined #ocaml
<napping> Is there any option for ocamlc to just typecheck a file?
<adrien_oww> you could use -i probably
<adrien_oww> it prints the inferred types to stdout
beckerb has quit [Ping timeout: 245 seconds]
<mrvn> napping: -o /dev/null
ontologiae_ has quit [Ping timeout: 256 seconds]
<napping> maybe I'm doing it wrong, but -i didn't print anything
<mrvn> is the file empty?
<mrvn> or empty of types and named bindings at least
bernardofpc has quit [Read error: Operation timed out]
<napping> I guess the type is too big
<napping> I'm trying to benchmark just the typechecking on some pathological examples
<napping> if the contents are just let f00 = fun x -> fun y -> x, then ocamlc -i test.ml prints a type
AltGr has quit [Quit: Konversation terminated!]
<mrvn> if you have an error it prints nothing
<napping> If I deliberately add an error it prints an error
<mrvn> sure, it always does that. I ment it prints no types
<napping> I have a file with no errors
<napping> ocamlc finishes without and problem and generates output
travisbrady has quit [Quit: travisbrady]
<napping> ocamlc -i finishes with no output at all and a successful exit code
<napping> it's a pathological example where the inferred type has thousands of parameters
travisbrady has joined #ocaml
<napping> but, ocamlc -i and ocamlc take about the same time anyway, so I guess code generation is cheap
Cypi has quit [Ping timeout: 240 seconds]
Cypi has joined #ocaml
<mrvn> report it as a bug if you can
Neros has joined #ocaml
csakatoku has quit [Remote host closed the connection]
ollehar has joined #ocaml
pygmalion has joined #ocaml
walter has quit [Quit: This computer has gone to sleep]
pygmalion has quit [Ping timeout: 264 seconds]
walter has joined #ocaml
brendan has quit [Remote host closed the connection]
dsheets has quit [Ping timeout: 246 seconds]
mcclurmc has quit [Ping timeout: 240 seconds]
Drup has joined #ocaml
Yoric has joined #ocaml
brendan has joined #ocaml
Drup has quit [Quit: Leaving.]
Drup has joined #ocaml
Neros has quit [Ping timeout: 248 seconds]
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
ocp has quit [Quit: Leaving.]
Tamae has joined #ocaml
mort___ has quit [Quit: Leaving.]
Drup has quit [Ping timeout: 256 seconds]
bernardo1pc has joined #ocaml
gnuvince has quit [Remote host closed the connection]
gnuvince has joined #ocaml
pygmalion has joined #ocaml
pygmalion has quit [Ping timeout: 257 seconds]
ski has joined #ocaml
_andre has quit [Quit: leaving]
ulfdoz has quit [Ping timeout: 256 seconds]
ggole has quit [Ping timeout: 240 seconds]
Neros has joined #ocaml
tobiasBora has quit [Ping timeout: 256 seconds]
Drup has joined #ocaml
bernardo1pc has quit [Quit: Reconnecting]
bernardofpc has joined #ocaml
maurer_ has joined #ocaml
<maurer_> Hey, if I want to apply a long series of functions in a row, is there something similar to the ($) operator from haskell, or an easy way to define it?
<maurer_> For reference, the operater is defined so that "f $ g x" translates to "f (g x)"
<maurer_> *operator
<whitequark> I think there's let (|>) x f = f x
<smondet> maurer_: you can add it let ($) f x = f x
<maurer_> Ah, that sounds like what I want
<whitequark> it works like shell pipe
<maurer_> smondet: That will get the binding right so I can do
<maurer_> f $ g $ h x
<maurer_> and get f (g (h x)) ?
<maurer_> I would think I'd need funny fixity for that
<smondet> I'm not sure, there was a blog post a while ago about even creating a syntax extension for that
<whitequark> that doesn't work as intended
<whitequark> but I think |> is your best bet
<smondet> (I don't use it, '|>' is the only operator that does not kill readability)
<whitequark> no, not the syntax extension--that let($) thing above
<ollehar> including M from A, why can't I use functions that are not in M:s signature from A? No "protected" in OCamls module system?
osnr has quit [Quit: Leaving.]
<maurer_> smondet: I'm using |> for now. I'm not super attached to needing things to be haskellike
<maurer_> I just thought it looked super silly to do deeply nested parentheses for sequencing function application
<napping> ollehar: If the signature is like M : Sig, you only see things from Sig. M <: Sig checks that it conforms but leaves stuff visible
<ollehar> napping: hm
<napping> I don't remember how that works at the file level, if you have a separate .mli file
<napping> but that's how it goes if you define modules and signatures inside a file
darkf has quit [Quit: Leaving]
pygmalion has joined #ocaml
ttamttam1 has joined #ocaml
ttamttam1 has left #ocaml []
<jpdeplaix> the operator corresponding to ($) and (.) are (@@) and (%). The first and the revapply operator (|>) will be included in the next release. The latest operator is in batteries if you want.
<jpdeplaix> maurer_: ^
pygmalion has quit [Ping timeout: 260 seconds]
<whitequark> why do people even feel a need for depending on a large library for doing something like let (|>) x f = f x
<whitequark> why
<maurer_> whitequark: because they don't want to write that in every file, or remake the wheel
<jdoles> whitequark: why do people even talk about what you are talking about? If it bothers you, write a compiler patch such that minimal library uses up to some treshold are inlined.
<flux> whitequark, when it's in a library, many people choose to use the same operators for the same thing
<flux> that helps when you read random pieces of code
caligula__ has joined #ocaml
mehdid_ has joined #ocaml
mrvn_ has joined #ocaml
ipoulet has joined #ocaml
amiller__ has joined #ocaml
Neros has quit [Read error: Connection reset by peer]
weie has joined #ocaml
<jpdeplaix> whitequark: it's just a indication if he already uses batteries. Indeed, it's very simple to rewrite, but if it exists anywhere else and it's already used, then it's simpler to just use it.
weie_ has quit [Ping timeout: 246 seconds]
bernardofpc has quit [*.net *.split]
napping has quit [*.net *.split]
mehdid has quit [*.net *.split]
sgnb has quit [*.net *.split]
mrvn has quit [*.net *.split]
amiller_ has quit [*.net *.split]
caligula_ has quit [*.net *.split]
ipoulet_ has quit [*.net *.split]
walter has quit [Read error: Connection reset by peer]
walter has joined #ocaml
Neros has joined #ocaml
napping has joined #ocaml
napping has quit [Client Quit]
<ollehar> what does coercion means in ocaml?
<ollehar> type cast?
maurer_ has left #ocaml []
<ski> coercion to a supertype, i think
<ski> (you can't coerce to a subtype)
bernardofpc has joined #ocaml
sgnb has joined #ocaml
<ollehar> ski: the same as a typecast in e.g. java?
<ollehar> (although type cast in java allows both back and forth)
<ski> i suppose
davekong_ has joined #ocaml
<ollehar> ski: oki, thanks
asmanur has joined #ocaml
cokesme has joined #ocaml
quelu_ has joined #ocaml
ski_ has joined #ocaml
snarkyboojum_ has joined #ocaml
lusory_ has joined #ocaml
ski has quit [Disconnected by services]
ski_ is now known as ski
def-lkb_ has joined #ocaml
mal``` has joined #ocaml
davekong has quit [Ping timeout: 246 seconds]
mal`` has quit [Ping timeout: 246 seconds]
snarkyboojum has quit [Ping timeout: 246 seconds]
lusory has quit [Ping timeout: 246 seconds]
asmanur_ has quit [Ping timeout: 246 seconds]
bobry has quit [Ping timeout: 246 seconds]
zopt has quit [Ping timeout: 246 seconds]
quelu has quit [Ping timeout: 246 seconds]
def-lkb has quit [Ping timeout: 246 seconds]
q66 has quit [Ping timeout: 246 seconds]
q66 has joined #ocaml
davekong_ is now known as davekong
pygmalion has joined #ocaml
bernardofpc has quit [Quit: leaving]
bernardofpc has joined #ocaml
pygmalion has quit [Ping timeout: 264 seconds]
tane has joined #ocaml
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
osnr has quit [Client Quit]
travisbrady has quit [Quit: travisbrady]
tobiasBora has joined #ocaml
travisbrady has joined #ocaml
osa1 has joined #ocaml
jayprich has joined #ocaml
zpe has joined #ocaml
demonimin_ has joined #ocaml
zpe has quit [Remote host closed the connection]
Patchou has joined #ocaml
demonimin has quit [Ping timeout: 240 seconds]
Tamae has quit [Ping timeout: 240 seconds]
Patchou has quit [Quit: KVIrc 4.0.4 Insomnia http://www.kvirc.net/]
jayprich has quit [Quit: jayprich]
zpe has joined #ocaml
zpe has quit [Remote host closed the connection]
ulfdoz has joined #ocaml
travisbrady has quit [Quit: travisbrady]
Yoric has quit [Ping timeout: 240 seconds]
walter has quit [Quit: This computer has gone to sleep]
dsheets has joined #ocaml
smondet has quit [Quit: Let's go to Jane St for the OCaml Meetup !]
tane has quit [Quit: Verlassend]
walter has joined #ocaml
<whitequark> err
<whitequark> how do you refer to a multiplication operator?
<whitequark> (+) works, (*) is a comment
<asmanur> ( * )
<whitequark> right
mattrepl has joined #ocaml
yacks has quit [Ping timeout: 246 seconds]
bobry has joined #ocaml
<Leonidas_> hmm, I built my project using ocamlbuild and it works
<Leonidas_> but I'd like to test the stuff in the REPL, so I have to include the *.cmo files
<Leonidas_> but unfortunately I have some C dependencies and OCaml fails to start because it can't find the C stubs. What do I have to do to include these as well?
Leonidas_ is now known as Leonidas
<Leonidas> okay, I kludged something together with ocamlmktop, but maybe there are better ways?
<Leonidas> ocamlmktop -o mytop *.cma *.o and then I need to use LD_LIBRARY_PATH=. to find dllost_stubs.so in the current directory
zpe has joined #ocaml
yacks has joined #ocaml
Simn has quit [Quit: Leaving]
zpe has quit [Ping timeout: 240 seconds]
ohama has quit [Remote host closed the connection]
eikke has joined #ocaml
mrvn_ is now known as mrvn
<mrvn> I want to write "class root = object (self) inherit base self end". Any way to do that?
<mrvn> with class base parent = object end
<mrvn> Error: The instance variable self cannot be accessed from the definition of another instance variable
<mrvn> class root parent = object (self) inherit base parent end
<mrvn> # let rec root = new root root;;
<mrvn> Error: This kind of expression is not allowed as right-hand side of `let rec'
<mrvn> Any ideas other than using Obj.magic 0 as parent?
ulfdoz has quit [Ping timeout: 264 seconds]
<pippijn> whitequark: have you seen the new ucs api?
demonimin_ is now known as demonimin
osnr has joined #ocaml
osnr has quit [Changing host]
osnr has joined #ocaml
eikke has quit [Ping timeout: 256 seconds]
eikke has joined #ocaml
osnr has quit [Ping timeout: 260 seconds]
osnr1 has joined #ocaml
<whitequark> pippijn: yeah
osnr1 has quit [Ping timeout: 240 seconds]
<pippijn> whitequark: better now?
<whitequark> pippijn: yes
<whitequark> is it finished enough? I'd want to integrate it in my compiler
bernardo1pc has joined #ocaml
bernardo1pc has quit [Client Quit]
<pippijn> whitequark: I think the API is stable, but incomplete
<pippijn> whitequark: the only thing I want to do now is add functionality
<pippijn> whitequark: but I'm not sure everything can be implemented with it, yet
<whitequark> pippijn: I'll work on integrating it now, then
<whitequark> I only use adopt, concat and to_string now, anyway
<pippijn> I don't have those
<pippijn> only adopt
<pippijn> but concat is trivial
<pippijn> concat = String.concat
* whitequark nods
<whitequark> uh... restored 2+2 in foundry
<whitequark> now I need to sweep out irregularities of argument parsing and let unbinding, add ivar support and move on to ir writing/parsing
<whitequark> er, 'let unbinding', what the fuck did I just invent
<whitequark> should've been 'pattern matching'
<whitequark> my sleepy brain tends to substitute vaguely related words in amusing manner
<whitequark> erlang → arduino
<whitequark> based on phonetics and general domain
mattrepl has quit [Quit: mattrepl]
* pippijn has been doing git rebase+filter-branch all day
<pippijn> don't worry, not on anything public
<pippijn> I'm doing that before going public