jbzfn, to programming
@jbzfn@mastodon.social avatar

:blobwizard: Prolog, Erlang, Elixir, a side-by-side reference sheet | Hyperpolyglot

https://hyperpolyglot.org/logic

ovid, to javascript
@ovid@fosstodon.org avatar

I started programming in 1982. Though I'm known as a developer, I tried to remember every other languages I've programmed in.

, #C, 6809 Assembler, , VBScript (and its many variants), , , , , , , Easytrieve, and probably a few others.

I wish I had gotten a job in Prolog, primarily because I loved what I could create with it. I don't love programming; I love creating.

What are you languages?

mina,
@mina@berlin.social avatar

@ovid

Basic, Pascal, C/C++, JavaScript, Tcl/Tk, Bash, Prolog quickly from my head

My favourite, though, is #Perl.

ferki,
@ferki@fosstodon.org avatar

@ovid Hmm, let's see:

Larger uses: BASIC, Turbo Pascal, C, Bash, PHP, Perl

Smaller extent: Haskell, Python, Go, AWK, JavaScript, Ruby, C++, Lua, Vimscript

People keep telling me I would enjoy (Common) Lisp, but the proper project I could use as an excuse haven't found me yet 😅

abucci, to ProgrammingLanguages
@abucci@buc.ci avatar

A weird thing about being 50 is that there are programming languages that I've used regularly for longer than some of the software developers I work with have been alive. I first wrote BASIC code in the 1980s. The first time I wrote an expression evaluator--a fairly standard programming puzzle or homework--was in 1990. I wrote it in Pascal for an undergraduate homework assignment. I first wrote perl in the early 1990s, when it was still perl 4.036 (5.38.2 now). I first wrote java in 1995-ish, when it was still java 1.0 (1.21 now). I first wrote scala, which I still use for most things today, in 2013-ish, when it was still scala 2.8 (3.4.0 now). At various times I've been "fluent" in 8086 assembly, BASIC, C, Pascal, perl, python, java, scala; and passable in LISP/Scheme, Prolog, old school Mathematica, (early days) Objective C, matlab/octave, and R. I've written a few lines of Fortran and more than a few lines of COBOL that I ran in a production system once. I could probably write a bit of Haskell if pressed but for some reason I really dislike its syntax so I've never been enthusiastic about learning it well. I've experimented with Clean, Flix, Curry, Unison, Factor, and Joy and learned bits and pieces of each of those. I'm trying to decide whether I should try learning Idris, Agda, and/or Lean. I'm pretty sure I'm forgetting a few languages. Bit of 6502 assembly long ago. Bit of Unix/Linux shell scripting languages (old enough to have lived and breathed tcsh before switching to bash; I use fish now mostly).

When I say passable: in graduate school I wrote a Prolog interpreter in java (including parsing source code or REPL input), within which I could run the classic examples like append or (very simple) symbolic differentiation/integration. As an undergraduate I wrote a Mathematica program to solve the word recognition problem for context-free formal languages. But I'd need some study time to be able to write these languages again.

I don't know what the hell prompted me to reminisce about programming languages. I hope it doesn't come off as a humblebrag but rather like old guy spinning yarns. I think I've been through so many because I'm never quite happy with any one of them and because I've had a varied career that started when I was pretty young.

I guess I'm also half hoping to find people on here who have similar interests so I'm going to riddle this post with hashtags:

#C #R

abucci,
@abucci@buc.ci avatar

@BoydStephenSmithJr How do you find using Haskell in a work setting? I always feel like I'm under time pressure and don't have as much as I would like to think through a design. I'm never satisfied with my Scala code for that reason and I feel like it'd feel even worse with Haskell since it's so much more concise.

Am not familiar with GMDTT, will have to check that out! So many things to learn 🤯

BoydStephenSmithJr,
@BoydStephenSmithJr@hachyderm.io avatar

@abucci This is my second Haskell job and I'm sure things will depend on the organization around you, but I just do the first thing that I can think of that "will work", make it as simple / concrete / specialized as possible until I have something that compiles without warnings, and only then do I let myself generalize / abstract things. Try to stick documentation on all new top-level bindings while my motivation is fresh, and allow myself to rewrite later.

YMMV, HTH

rwxrwxrwx, to math
@rwxrwxrwx@mathstodon.xyz avatar

From the introduction of [1]:

"Our principal ambition for this paper is to make invitations to pure mathematicians to consider deploying constraint logic programming systems to assist in research, and to enthusiasts of the logic programming paradigm to consider applying their skills to problems in Lie theory. To this end we narrate a recent adventure searching for new simple Lie algebras over the field F2 = GF(2) of two elements in dialogue with the Prolog programming environment"

[1] D. Cushing, G. Stagg, and D. Stewart, “A Prolog assisted search for new simple Lie algebras,” Math. Comp., vol. 93, no. 347, pp. 1473–1495, May 2024, https://www.ams.org/journals/mcom/2024-93-347/S0025-5718-2023-03889-3/home.html

#prolog #math

rzeta0, to ai
@rzeta0@mastodon.social avatar

If you struggled with the traditional #Prolog textbooks .. this short course was developed just for you.

✅ Develop understanding through hands-on bite-size examples.

✅ Example code is minimal to avoid distraction.

✅ Talk through how new ideas work, step-by-step.

✅ Avoid terminology and jargon if it is likely to hinder more than help.

YouTube: https://www.youtube.com/@prologbyexample/videos

Web: https://prologbyexample.blogspot.com/p/toc.html

GitHub: https://github.com/prologbyexample/code

Book: https://www.amazon.com/dp/B0BTQ7P69H/

#AI #logic #metaprogramming

boilingsteam, to ai
@boilingsteam@mastodon.cloud avatar
gvrooyen, to random
@gvrooyen@c.im avatar

Currently upping my #prolog -fu as a potential solution for a client who requires a scriptable rule engine. What a pleasure!

eibriel, to retrocomputing
@eibriel@sigmoid.social avatar
mxp, to retrocomputing
@mxp@mastodon.acm.org avatar

Maybe Tesla should have called Turboman! #Prolog #retrocomputing

anderseknert, to random
@anderseknert@hachyderm.io avatar

Fantastic article on "Why logic programming is the best choice for " on Gusto's engineering blog. If you're curious to learn the history of , and why it's built on top ideas from logic programming, and , this is a great read.

https://engineering.gusto.com/why-logic-programming-is-the-best-choice-for-authorization/

indieterminacy, to random
MegaMichelle, to programming
@MegaMichelle@a2mi.social avatar

I've been reading about #Erlang lately. I'm a little disappointed. Erlang seems real good and powerful, but it's not nearly as weird as I thought. I had somehow gotten the impression that it was #Prolog-level weird, but it's only #Lisp-level weird, which is not actually all that weird these days, since everybody else added some functional elements to their languages.

So I was ready to have my mind blown, but instead I only got it expanded.

MegaMichelle,
@MegaMichelle@a2mi.social avatar

@ids1024

Yepp, that is what I've found in my reading. This stuff is all cool too, and I like it a lot. It just wasn't what I had expected to learn.

tetrislife,

@MegaMichelle
I don't know. A busy loop, or a wait on a connection that went down, not hanging the system is still uncommon and overly engineered. That is pretty mind-blowing.
@ids1024

rml, to Java
@rml@functional.cafe avatar

#Algol, #C, #Java et al: deontology
#Scheme, #Lisp, etc: metaontology
#Haskell, #ML, etc: ontology

#Prolog, #Minikanren: phenomenology

xkummerer,
@xkummerer@chaos.social avatar

@rml now do forth

dpwiz,
@dpwiz@qoto.org avatar

@xkummerer @rml praxis

leobm, to Lisp German
@leobm@norden.social avatar

Lisprolog - Interpreter (compiler) for a simple #Lisp, written in #Prolog

https://www.metalevel.at/lisprolog/

anarchopunk_girl, to ArtificialIntelligence

Does anyone on here know how to make a faster? I'm writing a language ala in Rust and it's already pretty slow (takes 1.11 seconds to find 20 answers) at even four rules deep and a database with 84 facts. Might it be string comparisons for variable names and such? If so, how would I accelerate that?

tetrislife,

@anarchopunk_girl I don't, but aren't there existing well-tuned implementations to study and learn from?

anarchopunk_girl,

@tetrislife there are, but usually they go far beyond what I need or want to do (e.g. GNU Prolog is byte compiled)

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines